我正在编写代码自动生成的下拉菜单,例如谷歌搜索帮助,并尝试将该自动生成的下拉菜单的值打印为输出。
在 selenium WebDriver 中捕获多个与 xpath 定位器匹配的元素,我们必须使用 findElementsBy() 函数,
我写的代码如下
<?php
require_once 'www/library/phpwebdriver/WebDriver.php';
class PHPWebDriverTest extends PHPUnit_Framework_TestCase {
protected $webdriver;
protected function setUp() {
$this->webdriver = new WebDriver("localhost", 4444);
$this->webdriver->connect("firefox");
}
protected function tearDown() {
// $this->webdriver->close();
}
public function testgooglesearch() {
$this->webdriver->get("http://google.com");
$element=$this->webdriver->findElementBy(LocatorStrategy::name, "q");
$element->sendKeys(array("selenium" ) );
$result=$this->webdriver->findElementsBy(LocatorStrategy::xpath,"//*[@id=\'gsr\']/table/tbody/tr/td[2]/table/tbody/tr[*]/td/");
echo $countresult=count($result);
}
}
?>
根据绑定 findElementsBy() 函数将假设返回一个数组。所以当我试图计算数组长度时,会返回一个错误。
错误:试图获取非对象的属性。
任何人都可以帮助我如何继续。