selenium+Java使用内容记录(全)
1.模拟键盘操作,使用enter键
2.等待几秒
3.浏览器最大化
4.获取cookie,删除cookie
5.模拟鼠标
6.selenium+java 识别验证码(数字+字母组合)
8.在浏览器上打开新页面
10.浏览器缩放(建议不要使用,可能会导致页面css样式变化,导致原先定位出错)
11.selenium +Java 列表(遍历列表;添加成功后,判断列表是否有该条数据)
12.selenium+java六-处理Iframe 中的元素
13.reprotNG
15.操作Web页面的滚动条 参考:https://www.cnblogs.com/yytesting/p/9080279.html
1.模拟键盘操作,使用enter键
sendKeys(Keys.ENTER)
driver.findElement(By.xpath("//*[@id='kw']")).sendKeys(Keys.ENTER);
2.等待几秒
Thread.sleep(); //单位是毫秒
3.浏览器最大化
driver.manage().window().maximize();
4.获取cookie
//获得cookie
Set<Cookie> coo = driver.manage().getCookies();
//打印cookie
System.out.println(coo);
删除cookie
//删除所有cookie
driver.manage().deleteAllCookies();
5.模拟鼠标
1. 鼠标左键点击
Actions action = new Actions(driver);
action.click(); //鼠标左键点击当前停留的位置
action.click(driver.findElement(By.id(“kw”))); //鼠标左键点击指定的元素对象 2. 鼠标右键点击
Actions action = new Actions(driver);
action.contextClick(); //鼠标右键点击当前停留的位置
action.contextClick(driver.findElement(By.id(“kw”))); //鼠标右键点击指定的元素对象 3. 鼠标双击
Actions action = new Actions(driver);
action.doubleClick(); //鼠标双击当前停留的位置
action.doubleClick(driver.findElement(By.id(“kw”))); //鼠标双击指定的元素对象 4. 鼠标拖拽
Actions action = new Actions(driver);
action.dragAndDrop(el1,el2); //鼠标将el1元素拖放到el2元素的位置
action.dragAndDrop(el1,x,y); //鼠标el1元素拖放到(x, y)位置,x为横坐标,y为纵坐标 5. 鼠标悬停
Actions action = new Actions(driver);
action.clickAndHold(el); //鼠标悬停在el元素的位置 6. 鼠标移动
Actions action = new Actions(driver);
action.moveToElement(el); //将鼠标移到el元素
action.moveToElement(el,x,y); //将鼠标移到元素el的 (x, y) 位置 7. 鼠标释放
action.release(); //释放鼠标
8.打开新页面
driver.get("http://beta.zhixiaoup.com");
//打开新页面
JavascriptExecutor js = (JavascriptExecutor) driver;
String url="window.open(\"http://www.baidu.com\")";
js.executeScript(url);
10.浏览器缩放
String url="document.getElementsByTagName('body')[0].style.zoom=0.8;";
((JavascriptExecutor) driver).executeScript(url);
selenium+Java使用内容记录(全)的更多相关文章
- Java Web快速入门——全十讲
Java Web快速入门——全十讲 这是一次培训的讲义,就是我在给学生讲的过程中记录下来的,非常完整,原来发表在Blog上,我感觉这里的学生可能更需要. 内容比较长,你可以先收藏起来,慢慢看. 第一讲 ...
- MongoDB Java API操作很全的整理
MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写,一般生产上建议以共享分片的形式来部署. 但是MongoDB官方也提供了其它语言的客户端操作API.如下图所示: 提供了C.C++ ...
- 2019大厂Java岗面试题全曝光,刷完这1020道,金三银四大厂等你
2019大厂Java岗面试题全曝光,刷完这1020道,金三银四大厂等你 前言: 本文收集整理了各大厂常见面试题N道,你想要的这里都有 内容涵盖:Java.MyBatis.ZooKeeper.Dubbo ...
- Java 虚拟机学习记录
参考资料 JVM高级特性与最佳实践-周志明 HotSpot 虚拟机垃圾回收调优指导 JVM 标准(Java SE 8) JSR 133 Java平台内存模型与线程修订版 命令行工具 JDK Vs JR ...
- Java 8 学习记录
Java 8 学习记录 官方文档 https://docs.oracle.com/javase/8/ https://docs.oracle.com/javase/8/docs/index.html ...
- Selenium碰到的异常记录
.markdown-preview:not([data-use-github-style]) { padding: 2em; font-size: 1.2em; color: rgb(171, 178 ...
- Java JVM 内存泄漏--全解析和处理办法 [ 转载 ]
Java JVM 内存泄露——全解析和处理办法 [转载] @author 小筐子 @address http://www.jianshu.com/p/bf159a9c391a JA ...
- 行为驱动:Cucumber + Selenium + Java(二) - 第一个测试
在上一篇中,我们搭建好了Selenium + Cucumber + Java的自动化测试环境,这一篇我们就赶紧开始编写我们的第一个BDD测试用例. 2.1 创建features 我们在新建的java项 ...
- Java设计模式学习记录-备忘录模式
前言 这次要介绍的是备忘录模式,也是行为模式的一种 .现在人们的智能手机上都会有备忘录这样一个功能,大家也都会用,就是为了记住某件事情,防止以后自己忘记了.那么备忘录模式又是什么样子的呢?是不是和手机 ...
随机推荐
- python中元组与数组的区别
列表: a=['12', '3rr'] 元组: t=(21,34) 列表可以修改,而元组不可以修改,如果元组中仅有一个元素,则要在元素后加上逗号. 元组和列表的查询方式一样. 元组只可读不可修改. 如 ...
- 360自带--JS开发工具箱
360自带–JS开发工具箱 360自带–JS开发工具箱 360自带–JS开发工具箱
- Codeforces 1099 - A/B/C/D/E/F - (Done)
链接:https://codeforces.com/contest/1099 A - Snowball - [模拟水题] 题意:有一个雪球从山顶滚落,山坡上有两块石头,每秒钟会一次发生三件事:1.雪球 ...
- redis分布式锁的具体应用
1.关于redis分布式锁,有个setIfAbsent: 即如果没有设置,会添加分布式锁,并返回true; 2.redis分布式锁有个轮询过程: / * @param key redis键 * @pa ...
- Linux下/usr/bin与/usr/local/bin/区别总结
Linux下/usr/bin与/usr/local/bin/区别总结 2017年10月13日 12:30:17 2puT 阅读数:15930 版权声明:本文为博主原创文章! github地址:h ...
- java框架之SpringCloud(3)-Eureka服务注册与发现
在上一章节完成了一个简单的微服务案例,下面就通过在这个案例的基础上集成 Eureka 来学习 Eureka. 介绍 概述 Eureka 是 Netflix 的一个子模块,也是核心模块之一.Eureka ...
- pandas的Panel类型dtype
panel = pd.Panel(dataframe_dict) 把一个多列类型不相同(里面有int,float)的dataframe字典直接赋值给Panel,从Panel中解析出来的datafram ...
- 基于Spark Streaming + Canal + Kafka对Mysql增量数据实时进行监测分析
Spark Streaming可以用于实时流项目的开发,实时流项目的数据源除了可以来源于日志.文件.网络端口等,常常也有这种需求,那就是实时分析处理MySQL中的增量数据.面对这种需求当然我们可以通过 ...
- Tomcat不加项目名称访问设置
一.Tomcat不加项目名称访问设置 一.方法一:修改配置文件server.xml 1.修改配置文件server.xml <Host appBase="webapps" au ...
- 九、使用多线程——NSThread,GCD和NSOperation
概述 早上起床,你先打开洗衣机,然后用热水把泡面泡上,接着打开电脑开启一天的码农生活.其中“洗衣服”.“泡泡面”和“码代码”3个任务(线程)同时进行,这就是多线程.网上有许多关于多线程的经典解释,此处 ...