Selenium:单击 React 按钮

Selenium: Clicking on React button

我正在尝试自动测试我的学校反应网站,第一页加载正常,我输入密码并按回车键提交,在第二页上有很多相同的按钮 class 名称,因此唯一区分它们的方法是从它们的文本值,例如“注销”、“演示测试”等,请看图片以查看布局和 HTML 代码,我遇到的问题是实际使用 selenium 单击页面,只需手动单击它就可以正常工作: 我尝试使用:

driver.findElement(By.linkText("demo test")).click();

driver.findElement(By.xpath("//button[[@type, 'button'] and [text()='demo test']]")).click();

和各种按 class 名称查找元素,但它们都具有相同的 class 名称,请看图片。

HTML:

To click() 在文本为 demo test 的元素上,您需要引入 for the and you can use either of the following :

  • xpath:

    new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//button[@class='btn' and text()='demo test']"))).click();