Selenium无效的XPath错误

时间:2014-04-14 15:58:07

标签: java xml selenium xpath

我收到以下错误:

com.thoughtworks.selenium.SeleniumException: ERROR: Invalid xpath [2]: //input[@value='Accedi']
    at com.thoughtworks.selenium.HttpCommandProcessor.throwAssertionFailureExceptionOrError(HttpCommandProcessor.java:112)
    at com.thoughtworks.selenium.HttpCommandProcessor.doCommand(HttpCommandProcessor.java:106)
    at com.thoughtworks.selenium.DefaultSelenium.click(DefaultSelenium.java:193)

该文件的XML部分是:

<p>
<div><input class="login button" type="submit" value="Accedi" /></div>
</p>

我的Java代码是:

selenium.click("//input[@value='Accedi']");

我试图将单引号更改为双引号,将xpath更改为:

/html/body/div[3]/div[2]/form/p[4]/div/input[@value="Accedi"]

我从工具中获得的。

为什么我尝试过的所有XPath都错了?

1 个答案:

答案 0 :(得分:2)

你能确定一些事情:

  • 您能否确保Xpath评估只返回您想要点击的单个对象。

  • 如果您能够唯一地识别您的对象,那么您可以尝试使用以下建议点击吗?

  • 你可以尝试这个Xpath://输入[包含(@ class,'登录按钮')]或 //输入[含有(@值, 'Accedi')]

  • 如果您还面临这个问题,可以请发布Selenium 版本和您正在使用的浏览器。如果您使用的是chrome或IE, 同时指定驱动程序版本。