【发布时间】:2020-05-09 21:33:57
【问题描述】:
谷歌浏览器 79.0.3945.130
ChromeDriver 79.0.3945.36
selenium-server-4.0.0-alpha-4.jar
来自the php-webdriver GitHub as of 1/22/2020的最新代码
我正在使用 Xfvb 在本地主机上以独立模式启动 Selenium 服务器:
$ Xvfb :99 -screen 5 1920x1080x8 &
$ export DISPLAY=:99
$ java -Dwebdriver.chrome.driver="./chromedriver" -jar selenium-server-4.0.0-alpha-4.jar standalone
然后我有一个测试助手类,它在 PHP 代码中启动:
1 final public static function createWebDriver() {
2 $options = new ChromeOptions();
3 $options->addArguments(array('--window-size=1920,1080'));
4 $caps= DesiredCapabilities::chrome();
5 $caps->setCapability(ChromeOptions::CAPABILITY, $options);
6 $driver = RemoteWebDriver::create('http://localhost:4444/wd/hub', $caps);
7 $driver->manage()->window()->maximize();
8 return $driver;
9}
当我运行测试并调用 RemoteWebDriver::create() 函数时,它会抛出异常:
Facebook\WebDriver\Exception\UnknownCommandException:找不到 (POST) /wd/hub/session 的处理程序 /home/me/UnitTest/vendor/facebook/webdriver/lib/Exception/WebDriverException.php:137 /home/me/UnitTest/vendor/facebook/webdriver/lib/Remote/HttpCommandExecutor.php:380 /home/me/UnitTest/vendor/facebook/webdriver/lib/Remote/RemoteWebDriver.php:136 /var/www/html/project/core/functions/SeleniumTestHelper.php:6
问题在于:
$driver = RemoteWebDriver::create('http://localhost:4444/wd/hub', $caps);
我向 netstat 确认我正在侦听端口 4444 的所有地址。我在我的机器上找不到名为“hub”的目录。我不确定为什么这不起作用,而且似乎没有比这个例外更多的信息可以让我离开。
【问题讨论】:
-
我在部署集群时遇到同样的错误:github.com/SeleniumHQ/docker-selenium/blob/trunk/…
标签: selenium webdriver selenium-chromedriver facebook-php-webdriver php-webdriver