我很好奇是否有人知道哪种Selenium定位元素方法将用于识别下面的html。
我正在尝试定位并"点击">
button type="submit" tabindex="3" data-ng-click="login()" class="btn btn-default" data-ng-disabled="loginForm.$invalid" data-ng-class="{ 'gray': loginForm.$invalid }">Login</button
这取决于,如果你知道文本不会改变,直接使用文本
//button[text()='Login']
或基于属性
//button[@data-ng-click='login()']
你可以将这两个组合如下:
//button[@data-ng-click='login()' and text()='Login']
PS:如果我们在HTML DOM
中是否有唯一条目,请检查dev tools
(谷歌铬)。
检查步骤:
Press F12 in Chrome
->转到element
部分->进行CTRL + F
->然后粘贴xpath
,看看您想要的element
是否通过1/1
匹配节点突出显示。
您可以遵循xpath、
- //按钮[@type='submit']
- //button[@data ng click='login()']
- //button[text()="登录"]
driver.findElement(By.xpath("//button[text()='X']"))。单击();