天行健,君子以自强不息;地势坤,君子以厚德载物。
每个人都有惰性,但不断学习是好好生活的根本,共勉!
文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。
执行程序前请先配置驱动:
关于Java selenium使用前浏览器驱动的下载和环境变量的配置
关于Selenium自动化测试工具的Java实现详情请参考文章:
如何查看页面对应的Selenium定位参数
Java实现 selenium Web自动化测试(简单篇)
Java实现 selenium Web自动化测试(详细篇)
1. 下拉框html文件
在演示操作下拉框之前先写一个简单的html页面,当然如果你有现成的可以直接用
这里有一个简单的带下拉框的html
combobox.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div>
<label for="sc">地区选择:</label>
<select id="sc" name="SC">
<option value="1" selected>上海</option>
<option value="2" >北京</option>
<option value="3" >深圳</option>
</select>
</div>
<div>
<label for="in">libai</label>
<input type="text" id="in" name="IN" maxlength="100" >
</div>
</body>
</html>
可以复制放到一个地方,然后把文件路径复制下来
2. 通过Selenium打开html页面
将html路径配置到代码中,打开
//创建驱动对象
WebDriver webDriver = new ChromeDriver(cops);
// 启动需要打开的网页
// webDriver.get("https://www.baidu.com");
webDriver.get("E:\\PROJECTS\\MYSELF\\libai-multifunctional-platform\\src\\main\\java\\com\\libai\\test\\selenium\\html\\combobox.html");
可参考第四部分完整代码执行程序打开页面,如下
3. 修改下拉框默认勾选的选项
可通过Select的selectByValue和selectByIndex方法进行默认选项的修改
先定位下拉框的元素位置
//定位select标签元素位置
WebElement select_ele = webDriver.findElement(By.name("SC"));
3.1 selectByValue
//重新设置默认选择项,值改为3
new Select(select_ele).selectByValue("3");
3.2 selectByIndex
//或者根据选项的排序,从0开始选择索引为2的选项
new Select(select_ele).selectByIndex(2);
执行后即可修改下拉框的默认选项,如图
4. 完整代码
ComboBoxControlTest.java
package com.libai.test.selenium.chrome;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.support.ui.Select;
/**
* @ClassDescription: 下拉框控制模拟
* @JdkVersion: 1.8
* @Author: 李白
* @Created: 2024/5/8 17:18
*/
public class ComboBoxControlTest {
public static void main(String[] args) throws InterruptedException {
//指定驱动,第一个参数为驱动名称,不同浏览器的参数名称不一样,请根据浏览器查询到对应的浏览器参数名,第二个参数为驱动文件路径,即驱动完整文件路径
System.setProperty("webdriver.chrome.driver", "D:\\JavaSoftWares\\Google\\driver\\chromedriver-win64\\chromedriver.exe");
// 谷歌驱动
ChromeOptions cops = new ChromeOptions();
// 允许所有请求
cops.addArguments("--remote-allow-origins=*");
//默认设置开始打开网页时窗口最大化
cops.addArguments("--start-maximized");
//创建驱动对象
WebDriver webDriver = new ChromeDriver(cops);
// 启动需要打开的网页
// webDriver.get("https://www.baidu.com");
webDriver.get("E:\\PROJECTS\\MYSELF\\libai-multifunctional-platform\\src\\main\\java\\com\\libai\\test\\selenium\\chrome\\html\\combobox.html");
//指定窗口大小--最大化
// webDriver.manage().window().maximize();
Thread.sleep(3000);
Thread.sleep(3000);
//定位select标签元素位置
// WebElement select_ele = webDriver.findElement(By.xpath("//select"));
// WebElement select_ele = webDriver.findElement(By.id("sc"));
WebElement select_ele = webDriver.findElement(By.name("SC"));
//重新设置默认选择项,值改为3
// new Select(select_ele).selectByValue("3");
//或者根据选项的排序,从0开始选择索引为2的选项
new Select(select_ele).selectByIndex(2);
Thread.sleep(3000);
Thread.sleep(3000);
//关闭整个浏览器,所有网页窗口都会关闭
webDriver.quit();
}
}
感谢阅读,祝君暴富!