Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Selenium JAVA xPath Firefox与Internet Explorer_Java_Selenium_Xpath_Cross Browser - Fatal编程技术网

Selenium JAVA xPath Firefox与Internet Explorer

Selenium JAVA xPath Firefox与Internet Explorer,java,selenium,xpath,cross-browser,Java,Selenium,Xpath,Cross Browser,我正在使用RemoteWebDriver、Firefox、Selenium IDE和JAVA 从一开始,我就运行IDE来检查和调试网页。我使用IDE得到了一个xpath值,如下所示: driver.get(baseUrl + "/url?value=something"); driver.findElement(By.xpath("(//li[@onclick='menu.open(this)'])[4]")).click(); …将JAVA与RemoteWebDriver和findEleme

我正在使用RemoteWebDriver、Firefox、Selenium IDE和JAVA

从一开始,我就运行IDE来检查和调试网页。我使用IDE得到了一个xpath值,如下所示:

driver.get(baseUrl + "/url?value=something");
driver.findElement(By.xpath("(//li[@onclick='menu.open(this)'])[4]")).click();
…将JAVA与RemoteWebDriver和findElementByPath(…)或findElement(By.xpath(…)一起使用时,我遇到了异常:

异常:找不到xpath==(//li[@onclick='menu.open(this)'))的元素[4]

我使用了这个值,并通过IDE和JAVA尝试了这些值:

    (//li[@onclick='menu.open(this)'])[4]
    and
    //li[@onclick='menu.open(this)'][4]
在IDE中,它与JAVA一起工作,而不是

更新和更正

我修改了测试程序,用Firefox代替IE(版本11),它可以正常工作。在IE和Firefox中使用xpath有什么不同的处理方式?或者更一般地说,哪种浏览器以哪种方式和相同的值使用xpath

更新


该页面正在IE版本7模式下运行。这会引起麻烦吗

请查看链接,它可能会对您有所帮助

可能是IDE正在等待元素出现,而Java程序没有。你试过添加等待元素吗?嗨,本。我想没有,请看我的更新。xpath位于当前页面上,并且处于活动状态。在我尝试使用xpath之前,我做了一个截图…你看过IE上的HTML了吗?与Firefox相比,IE上的HTML很可能有所不同。路径末尾的“[4]”很有可能……也许IE?Hi BS中的这些列表项较少。很难比较。。。IE调试器和FF调试器之间的页面结构视图不同,但元素的计数和内容相同。。。一个变通方法可以是使用findElement(By.id(…),但它只是本例的变通方法……Hi-QATesting。只要我不使用xpath,IE就可以正常工作。程序启动主页,切换到第二个窗口,通过findElement(by.name)和findElement(by.id)登录和注销都可以正常工作。只是xpath(目前)与Firefox不一样。。。