click()
我的 php 代码中的函数有问题。它总是抛出这个异常:
致命错误:未捕获的 Facebook\WebDriver\Exception\UnknownCommandException: POST /session/f3cffab9-71ad-4e0a-baab-4a46d807ce3d/element//click
我正在运行它:
- Windows 2008 服务器 x64
- selenium 独立服务器 3.9.1
- PHP 7.1
但它不适用于7.0
或7.2
两者之一。我正在使用最新的 facebook webdriver 和最新IEdriver
的。
我试图运行的代码是:
<?php
use Facebook\WebDriver\Remote\DesiredCapabilities;
use Facebook\WebDriver\Remote\RemoteWebDriver;
use Facebook\WebDriver\WebDriverBy;
use Facebook\WebDriver\WebDriverDimension;
use Facebook\WebDriver\WebDriverExpectedCondition;
use Facebook\WebDriver\WebDriverPoint;
require_once __DIR__ . '/vendor/autoload.php';
$host = 'http://localhost:4444/wd/hub';
$driver = RemoteWebDriver::create($host, DesiredCapabilities::InternetExplorer());
// Set size
$driver->manage()->window()->setPosition(new WebDriverPoint(0,0));
$driver->manage()->window()->maximize();
$driver->get("http://www.google.com");
sleep(1);
$driver->findElement(Facebook\WebDriver\WebDriverBy::name('q'))->click();
sleep(1);
$driver->findElement(Facebook\WebDriver\WebDriverBy::name('q'))->sendKeys('test');
sleep(1);
// Click the search button
$driver->findElement(Facebook\WebDriver\WebDriverBy::name('btnK'))->click();
$driver->quit();
?>
如果我正确理解所有内容,它应该去谷歌,选择搜索栏并将字符串“test”放在那里。然后它应该选择提交按钮并提交表单。我尝试了不同的站点以及不同的命令,似乎我可以做任何事情,click
除了sendKeys
. 我也尝试了最新的Firefox
并geckodriver
得到了相同的结果。