Java自动化测试(特殊元素处理 25)
时间:2022-07-24
本文章向大家介绍Java自动化测试(特殊元素处理 25),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
下拉框
- 找到下拉框所在元素
- 导入
import org.openqa.selenium.support.ui.Select;
- 新建
Select
对象 - 通过
getOptions
拿到全部选项内容 - 通过
selectByIndex
或者selectByValue
或者selectByVisibleText
分别以index
,value
,text
来选择
WebElement selectElement = driver.findElement(By.id("modules"));
Select select = new Select(selectElement);
List<WebElement> options = select.getOptions();
System.out.println(options);
System.out.println(select.isMultiple());
select.selectByIndex(1);
Thread.sleep(200);
select.selectByValue("20");
Thread.sleep(2000);
select.selectByVisibleText("switch");
iframe
需要将driver的焦点切换到iframe中
索引
页面上从0开始的iframe
driver.switchTo().frame(index);
id
元素的id名称
driver.switchTo().frame(nameOrId);
iframe WebElement
driver.switchTo().frame(WebElement);
跳转到父级iframe中
driver.switchTo().parentFrame()
回到默认内容页面
driver.switchTo().defaultContent()
切换windows窗口
打开新页面之后需要进行切换才能定位到新页面的内容
切换需要传入窗口的handle句柄
driver.switchTo().window(nameOrHandle)
获取句柄
driver.getwindowHandle(); //获取当前窗口句柄
driver.getwindowHandles();//获取全部窗口句柄
切换Alart弹框
driver.switchTo().alart()
获取弹出框中的提示信息
alart.getText()
点击确认按钮
alart.accept()
点击取消按钮
alart.dismiss();
鼠标操作
clickAndHold() //左键点击并且不释放
release() //在特定元素上释放左键
doubleClick() //双击左键
moveToElement()//移动鼠标指针到特定元素
contextClick() //在特定元素上右键点击
dragAndDrop() //拖拽元素
perform() //执行具体操作,前面方法都是声明操作,调用perform后才会执行
完成一系列操作:
Actions actions = new Actions(driver);
WebElement a = driver.findElement(By.id("a"));
WebElement b = driver.findElement(By.id("b"));
actions.clickAndHold(a).moveToElement(b).release().perform();
- (Head First 设计模式)学习笔记(1)
- [c#]Webservice中如何实现方法重载(overload)以及如何传送不能序列化的对象作参数
- Web.Config文件配置小记
- [原创]web application中使用Profile应该注意的问题
- MRTG FOR WINDOWS 安装指南
- 几种常见复合sql查询语句的linq写法[继续补充中]
- [原创]在msmq3.0中使用http协议发送消息
- 微信小程序开发探索之路
- 前端周记 2017 年终总结
- asp.net mvc中的路径选择
- MVC中实现加载更多
- 在ASP.NET MVC 中获取当前URL、controller、action
- [转自Scott]ASP.NET MVC框架(第四部分): 处理表单编辑和提交场景
- MVC前台Post/Get异步获得数据时参数的取值问题
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- 快速上手联邦学习——腾讯自研联邦学习平台PowerFL实战
- Linux发行版的镜像网站及开源软件收集
- 自建图床应用,我只推荐 Serverless
- 手把手教你使用 Nginx Ingress 实现金丝雀发布
- Kettle构建Hadoop ETL实践(六):数据转换与装载
- 从面试角度一文学完 Kafka
- Kettle构建Hadoop ETL实践(七):定期自动执行ETL作业
- 轻松理解JVM的分代模型
- Mybatis的几种传参方式,你了解多少?
- 搭建NFS Server
- Paxos 分布式必问的内容,没有之一
- Java进阶训练营 第一周JVM 预习笔记
- LeetCode905. 按奇偶排序数组 题解
- 试用 Azure Sql 数据库
- (九)整合spring cloud云服务架构 - commonservice-config配置服务搭建