Xpath 类名相同时如何识别元素?
我有两个按钮登录和重置Xpath 类名相同时如何识别元素?,xpath,Xpath,我有两个按钮登录和重置 <a class="dboxheader" href="javascript:setAction('ValidateUser')">Sign In</a> <a class="dboxheader" href="javascript:setAction('Reset')">Reset</a> 如何解决这个问题?单引号字符串中有单引号。不知道它在selenium中是如何工作的,但xalan和saxon都使
<a class="dboxheader" href="javascript:setAction('ValidateUser')">Sign In</a>
<a class="dboxheader" href="javascript:setAction('Reset')">Reset</a>
如何解决这个问题?单引号字符串中有单引号。不知道它在selenium中是如何工作的,但xalan和saxon都使用以下方法工作良好:
select='//a[@href="javascript:setAction('ValidateUser')"]'
这就是相对XPath的美妙之处。虽然类是相同的,但我们可以通过不同的方法轻松地识别它们 试试下面
//a[contains(text(),'Sign In')]
//a[contains(text(),'Reset')]
这不管用。。org.openqa.selenium.NoSuchElementException:无法定位元素:{“方法”:“xpath”,“选择器”:“//a[contains(text(),'Sign-In')]”命令持续时间或超时:15毫秒在单击此Web元素之前,请使用下面的代码。assertTrue(driver.getPageSource()包含(“登录”);并让我知道错误消息?boolean b=driver.getPageSource()包含(“登录”);系统输出打印ln(b);结果:Falseboolean=driver.getPageSource()包含(“登录”);System.out.println(“存在登录文本”+b);这将返回trueSo按钮“登录”不在当前帧中。请切换到“登录”所在的正确框架,然后尝试单击Web元素。
//a[contains(text(),'Sign In')]
//a[contains(text(),'Reset')]