我收到以下错误:
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都错了?
答案 0 :(得分:2)
你能确定一些事情:
您能否确保Xpath评估只返回您想要点击的单个对象。
如果您能够唯一地识别您的对象,那么您可以尝试使用以下建议点击吗?
你可以尝试这个Xpath://输入[包含(@ class,'登录按钮')]或 //输入[含有(@值, 'Accedi')]
如果您还面临这个问题,可以请发布Selenium 版本和您正在使用的浏览器。如果您使用的是chrome或IE, 同时指定驱动程序版本。