Java Selenium - 如何在基于 AngularJS 的页面中单击没有 ID 或 ng-class 的按钮

Java Selenium - How to Click a Button that has no ID or ng-class in AngularJS based page

我使用的以下代码不会单击按钮并显示错误消息。

WebElement clickNextButton = webDriver.findElement(By.cssSelector("button[ng-class='btn-success']"));
clickNextButton.click();

Error message shows "no such element: Unable to locate element. {"method":"css selector","selector":"button[ng-class='btn-success']"}

我也尝试了以下代码段但没有成功:

  1.   WebElement clickNext1 = webDriver.findElement(By.cssSelector("button[ng-class='pccCTRL.pow.Page1InputsValid() ? 'btn-success' : 'btn-default'']"));
      clickNext1.click();
    
  2.  webDriver.findElement(By.partialLinkText("Next")).click();
    
  3.   webDriver.findElement(By.cssSelector("button[type='button']")).click();   
    

这是显示我正在尝试

的按钮的 html 代码段的屏幕截图

希望得到反馈。谢谢。

好的,我使用 By.xpath

解决了这个问题

这是解决它的代码段:

WebElement clickNextButton = webDriver.findElement(By.xpath("//button[contains(text(),'Next')]"));

clickNextButton.click();