无法选择唯一的定位器来单击元素 - selenium java krypton
cannot choose a unique locator to click an element - selenium java krypton
我需要一个唯一的定位器,因为我不能使用文本,因为它都有功能,我需要点击这个
这是我现在的示例代码,但它没有点击
findLink(By.xpath("//*[ng-click()='promptGroupDrawerCtrl.closeDrawer()']")).click
xpath
有两个问题:
ng-click
是属性,不是方法。去掉圆括号。
属性名称应以 @
开头
findLink(By.xpath("//*[@ng-click='promptGroupDrawerCtrl.closeDrawer()']")).click();
要单击文本为 Facility 的元素,您可以使用以下解决方案:
findLink(By.xpath("//a[@class='h4 panel-heading panel-back panel-title btn ng-binding' and contains(@ng-click,'closeDrawer')]")).click
注意:由于该元素是 Angular 元素,因此您必须为所需的 [=16= 引入 WebDriverWait ]元素可点击
我需要一个唯一的定位器,因为我不能使用文本,因为它都有功能,我需要点击这个
这是我现在的示例代码,但它没有点击
findLink(By.xpath("//*[ng-click()='promptGroupDrawerCtrl.closeDrawer()']")).click
xpath
有两个问题:
ng-click
是属性,不是方法。去掉圆括号。
属性名称应以 @
findLink(By.xpath("//*[@ng-click='promptGroupDrawerCtrl.closeDrawer()']")).click();
要单击文本为 Facility 的元素,您可以使用以下解决方案:
findLink(By.xpath("//a[@class='h4 panel-heading panel-back panel-title btn ng-binding' and contains(@ng-click,'closeDrawer')]")).click
注意:由于该元素是 Angular 元素,因此您必须为所需的 [=16= 引入 WebDriverWait ]元素可点击