在本节中, 你将学习如何在Selenium WebDriver中处理下拉菜单。
在继续本节之前, 让我们首先了解Selenium WebDriver中处理下拉菜单的一些基础知识。
在Selenium WebDriver中选择
Selenium WebDriver中的”
选择”
类用于在下拉菜单中选择和取消选择选项。通过将下拉式webElement作为参数传递给其构造函数, 可以初始化Select类型的对象。
WebElement testDropDown = driver.findElement(By.id("testingDropdown"));
Select dropdown = new Select(testDropDown);
如何从下拉菜单中选择一个选项?
WebDriver提供了三种从下拉菜单中选择选项的方法。
1. selectByIndex-用于根据其索引从0开始选择一个选项。
dropdown.selectByIndex(5);
2. selectByValue-用于根据其” 值” 属性选择一个选项。
dropdown.selectByValue("Database");
3. selectByVisibleText-用于根据选项上方的文本选择选项。
dropdown.selectByVisibleText("Database Testing");
让我们考虑一个测试案例, 在该案例中, 我们将自动执行以下方案:
- 调用Google Chrome浏览器
- 公开网址:https://www.testandquiz.com/selenium/testing.html
- 从下拉菜单中选择选项” 数据库测试”
- 关闭浏览器
步骤1。启动Eclipse IDE, 并打开我们在本教程前面的课程中创建的现有测试套件” Demo_Test” 。
第2步。右键单击” src” 文件夹, 然后从” 新建” > ” 类” 创建一个新的类文件。
文章图片
将你的班级名称命名为” Dropdwn_Test” , 然后单击” 完成” 按钮。
文章图片
第三步让我们进入编码基础。
- 要调用Google Chrome浏览器, 我们需要下载ChromeDriver.exe文件并将系统属性” 在Chrome浏览器上运行测试” 设置为ChromeDriver.exe文件的路径。我们已经在本教程的早期课程中对此进行了讨论。你也可以参考” 在Chrome浏览器上运行测试” 以了解如何下载和设置Chrome驱动程序的” 系统” 属性。
// System Property for Chrome Driver System.setProperty("webdriver.chrome.driver", "D:\\ChromeDriver\\chromedriver.exe");
- 之后, 我们必须使用ChromeDriver类初始化Chrome驱动程序。
// Instantiate a ChromeDriver class. WebDriver driver=new ChromeDriver();
结合以上两个代码块, 我们将获得代码片段以启动Google Chrome浏览器。
// System Property for Chrome Driver System.setProperty("webdriver.chrome.driver", "D:\\ChromeDriver\\chromedriver.exe");
// Instantiate a ChromeDriver class. WebDriver driver=new ChromeDriver();
- 之后, 我们需要编写代码以使第二个测试场景自动化(导航到所需的URL)。
// Launch Websitedriver.navigate().to("https://www.testandquiz.com/selenium/testing.html");
到目前为止, 完整的代码如下所示:
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class Partial_Link { public static void main(String[] args) {// System Property for Chrome Driver System.setProperty("webdriver.chrome.driver", "D:\\ChromeDriver\\chromedriver.exe");
// Instantiate a ChromeDriver class. WebDriver driver=new ChromeDriver();
// Launch Websitedriver.navigate().to("https://www.testandquiz.com/selenium/testing.html");
}}
步骤4现在, 我们将尝试通过检查其HTML代码来查找下拉菜单。
请按照下面给出的步骤在示例网页上找到下拉菜单。
- 公开网址:https://www.testandquiz.com/selenium/testing.html
- 右键单击示例网页上的下拉菜单, 然后选择” 检查元素”
文章图片
- 它将启动一个窗口, 其中包含下拉菜单开发中涉及的所有特定代码。
文章图片
- 记下其id属性。
文章图片
第五步为了使我们的第三个测试场景自动化, 我们需要编写代码, 该代码将从下拉菜单中选择” 数据库测试” 选项。
这是示例代码, 以便:
//Using Select class for selecting value from dropdownSelect dropdown = new Select(driver.findElement(By.id("testingDropdown")));
dropdown.selectByVisibleText("Database Testing");
Thus, our final test script will look something like this:import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.Select;
public class Dropdwn_Test{ public static void main(String[] args) {// System Property for Chrome Driver System.setProperty("webdriver.chrome.driver", "D:\\ChromeDriver\\chromedriver.exe");
// Instantiate a ChromeDriver class.WebDriver driver=new ChromeDriver();
// Launch Websitedriver.navigate().to("https://www.testandquiz.com/selenium/testing.html");
//Using Select class for selecting value from dropdown Select dropdown = new Select(driver.findElement(By.id("testingDropdown")));
dropdown.selectByVisibleText("Database Testing");
// Close the Browserdriver.close();
}}
以下屏幕截图显示了我们的测试脚本的Eclipse窗口。
文章图片
第六步右键单击Eclipse代码, 然后选择运行方式> Java应用程序。
文章图片
【Selenium WebDriver-处理下拉菜单图解】执行后, 上述测试脚本将启动Chrome浏览器并自动执行所有测试方案。
推荐阅读
- Selenium WebDriver第一个测试用例图解
- Selenium WebDriver处理复选框实例图解
- Selenium WebDriver-处理警报实例图解
- Selenium WebDriver-拖放实例图解
- Selenium WebDriver-浏览器命令实例图解
- Selenium WebDriver命令示例图解
- Selenium与C#测试教程详细步骤图解
- Selenium WebDriver教程介绍
- Selenium IDE-手动创建测试用例图解