Selenium + php-webdriver + Chromeで両方のバージョンを上げたら、
PHP Fatal error: Uncaught Facebook\WebDriver\Exception\ElementNotInteractableException: element not interactable (Session info: chrome=117.0.5938.92) in /var/lib/jenkins/workspace/*****/vendor/php-webdriver/webdriver/lib/Exception/WebDriverException.php:98 Stack trace:
のエラーに陥ってしまった。
このエラーを解決した時にしたことをメモとして残しておく。
はじめに環境を記載しておく
・Ubuntu 22.04.3 LTS (GNU/Linux 5.15.0-84-generic x86_64)
・Selenium 4.13.0 (Seleniumの3系からアップグレード)
・php-webdriver 1.15.0 (1.12系からアップグレード)
・Chrome 117.0.5938.92
・PHP 8.2.10
・Apache 2.4.57
エラーが発生した箇所は
Facebook\WebDriver\Remote\RemoteWebElement->sendKeys()
であったので、
<input type="text" name="***" value="">
に文字列を入力する箇所になる。
エラーの箇所をよくよく読んでみたら、
<input type="hidden" name="***" value="">
typeがhiddenになっていた。
以前のバージョンであれば、typeがhiddenの場合にRemoteWebElement->sendKeys()で文字列を入力しても強制的に実行されていたが、何処かのバージョンからエラーになるように変更になったようだ。
<input type="text" name="***" value="" readonly>
でも同様のエラーになる。