使用 Selenium webdriver 处理带有许多按钮的弹出窗口

软件测试 硒网络驱动程序 爪哇 硒2
2022-01-21 14:07:34

我正在使用带有 Java 语言的 Selenium Web 驱动程序。当弹出窗口中有两个按钮时,即 ok 和 cancel ,可以使用 Web 驱动程序使用以下代码轻松处理:

Alert alert = driver.switchTo().alert();
alert.accept(); // or alert.dismiss(); depending upon the action you want to perform.

但是当按钮多于两个时,即弹出窗口中有 3 到 4 个按钮(如确定、取消、重试、忽略/继续)时该怎么办?我们如何点击我们想要的任何按钮?

2个回答

您可能可以使用警报类中的 sendkeys 函数来按快捷键选择您想要的项目,或者选择正确的项目并按回车键。不幸的是,Selenium Alert 类似乎不允许您单击特定项目,这会更有用......

你可以使用 Selenium AdvancedUserInteractions吗?

您是否使用 CSS 样式表和/或页面对象?使用其中任何一个并将按钮定义为WebElements从多个选项中选择一个选项非常简单

element1.click() // (if you're using Java)
element2.click()

等等。