一、select 下拉框

1.下拉选的处理类:Select 如果页面元素是一个下拉框,我们可以将此web元素封装成Select对象。

Select select = new Select(WebElement element);
//Select select = new Select(driver.findElement(By.id("xxx")));
//获取所有选项的方法
select.getOptions();
//根据索引选中对应的元素
select.selectByIndex(index);
//根据value值选中对应的选项
select.selectByValue(value);
//根据文本值选中对应的选项
select.selectByVisibleText(text);
//判断是不是多选的选择框返回boolean值
select.isMultiple();
//取消所有的选中
select.deselectAll();

2.准备测试练习select.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>测试Select</title>
</head>
<body>
快递邮寄地址:
<select id="select_id" name="select_name" class ="select_cls">
<option value="0">请选择</option>
<option value="1">山西</option>
<option value="2">陕西</option>
<option value="3">山东</option>
<option value="4">四川</option>
<option value="5">河北</option>
</select>省_XXX_市_ XXX_街道
</body>
</html>

3.代码实战练习

package cn.test;

import java.util.List;

import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.ui.Select;
import org.testng.annotations.Test; import cn.test.BaseCase;
//BaseCase中封装了chrome的driver打开和关闭
public class Test04 extends BaseCase {
@Test
public void test() throws InterruptedException {
driver.get("file:///C:/Users/Administrator/Desktop/test/select.html");
//Select select = new Select(WebElement element);
Select select = new Select(driver.findElement(By.id("select_id")));
//获取所有选项的方法
List<WebElement> lst = select.getOptions();
for (WebElement webElement : lst) {
System.out.println("获取所有选项的方法依次输出文本值:"+webElement.getText());
}
//根据索引选中对应的元素
select.selectByIndex(1);
Thread.sleep(5000);
//根据value值选中对应的选项
select.selectByValue("4");
Thread.sleep(5000);
//根据文本值选中对应的选项
select.selectByVisibleText("山东");
Thread.sleep(5000);
//判断是不是多选的选择框返回boolean值
System.out.println(select.isMultiple());
//取消所有的选中
select.deselectAll();
Thread.sleep(5000);
}
}

学习后总结,不足之处后续补充!

最新文章

  1. android 数据存储Ⅰ
  2. Android Studio如何引用外部Library工程
  3. sublime text2 解决中文乱码
  4. C# 中将多个空格替换成一个空格
  5. ubuntu 14.04 允许root 登录
  6. java 遍历树节点 同时保留所有的从根到叶节点的路径
  7. 【微信小程序开发】秒懂,架构及框架
  8. DataTable数据修改,换列
  9. JDK--box和unbox
  10. [zt]C++二维数组讲解、二维数组的声明和初始化
  11. 我的第一个python web开发框架(23)——代码版本控制管理与接口文档
  12. [SDOi2012]吊灯
  13. php实现查询上传文件进度
  14. Leetcode 1021. 最佳观光组合
  15. 2-java内省机制(Introspector)
  16. Luogu 2173 [ZJOI2012]网络 - LCT
  17. Java异常捕获之一道try-catch-finally语句题
  18. LintCode——Pour Water
  19. STM32F1-workarea : how to drive a WS2812 RGB LED using PWM and DMA
  20. flume监控

热门文章

  1. Linux系列(30) - rpm命令管理之安装命令(2)
  2. django 自定义auth中user登陆认证以及自写认证
  3. [转载]解决虚拟机中Centos7出现错误:Failed to start LSB: Bring up/down networking
  4. Jmeter压力测试学习7--压测带token的接口
  5. PC Register简介
  6. JVM探针与字节码技术
  7. springcloud组件之hystrix服务熔断,降级,限流
  8. 题解 [HNOI2016]大数
  9. 路由器的不同接口对WANsim的影响
  10. IDA硬编码修改SO,重新打包APK绕过FRIDA反调试