Selenium Web驱动程序dropdownlist不适用于php


Selenium-webdriver dropdownlist not work php

我想选择第一个下拉列表,然后选择第二个,但我甚至无法处理第一个请解释为什么我得到错误

<?php
require_once "phpwebdriver/WebDriver.php";
$webdriver = new WebDriver("localhost", "4444");
$webdriver->connect("firefox");                            
$webdriver->get("http://namami.org/PKstate.aspx");
//$element = $webdriver->findElement('css selector', 'select[id="DdlState"] option[value="Assam"]');
$element = $webdriver->findElement("css selector", 'select[id="DdlState"] option[value="Assam"]')->click();
//$element=$webdriver->findElement(By.cssSelector("#DdlState")).click();
//$element->‌​click();
$webdriver->close();
?>

致命错误:在第7行调用C:''examplep''htdocs''temp''1.php中未定义的方法WebDriver::findElement()

我找不到答案。使用XAMPP。我将感谢你的帮助。问候Anton

您很可能需要延迟单击。

您试图用Selenium获取的项目是由Javascript生成的,我认为发生的事情是Selenium试图找到尚未完全渲染的东西。

试着打电话sleep(1);以延迟Selenium操作并查看其是否有效:

<?php
require_once "phpwebdriver/WebDriver.php";
$webdriver = new WebDriver("localhost", "4444");
$webdriver->connect("firefox");                            
$webdriver->get("http://namami.org/PKstate.aspx");
sleep(1); // allow the javascript some time to load
//$element = $webdriver->findElement('css selector', 'select[id="DdlState"] option[value="Assam"]');
//$element = $webdriver->findElement("css selector", 'select[id="DdlState"] option[value="Assam"]')->click();
////$element=$webdriver->findElement(By.cssSelector("#DdlState")).click();
////$element->‌​click();
//$webdriver->close();
//?>
<?php    
    require_once "phpwebdriver/WebDriver.php";    
    $webdriver = new WebDriver("localhost", "4444");    
    $webdriver->connect("firefox");
    $webdriver->get("http://namami.org/PKstate.aspx");    
    sleep(1); // allow the javascript some time to load    
    $element = $webdriver->findElement('id', 'DdlState');    
    $select = new Select($element);    
    $select->selectByValue("Assam");
    //?>