java-selenium-java鼠标键盘操作Actions类和Robot
Actions类
一、鼠标右击、双击
Java代码
//定位百度首页右上角 新闻
WebElement Xw=driver.findElement(By.xpath("//*[@id='u1']/a[1]"));
//new Actions对象
Actions RightClick=new Actions(driver);
//在 新闻 上点击鼠标右键
RightClick.contextClick(Xw).perform();
Thread.sleep(3000);
//双击 新闻
RightClick.doubleClick(Xw).perform();
Thread.sleep(3000);
二、鼠标移动到指定位置
java代码
//定位百度首页右侧 更多产品
WebElement gdcp=driver.findElement(By.xpath("//*[text()='更多产品']"));
//实例化Actions
Actions MTE=new Actions(driver);
//鼠标移动到 更多产品上
MTE.moveToElement(gdcp).perform();
//等待3秒
Thread.sleep(3000);
三、拖动元素
java代码
//定位要拖动的元素
WebElement dg=driver.findElement(By.xpath("//*[text()='拖动']"));
//实例化Actions
Actions tuodong=new Actions(driver);
Thread.sleep(1000);
//将定位的dg拖动(100,300)
tuodong.dragAndDropBy(dg,100,300).perform();
Thread.sleep(2000);
四、将元素拖到另一元素上
java代码
//定位要拖动的元素
WebElement ElementStart=driver.findElement(By.xpath("//*[text()='拖动']"));
//定位终点上的元素
WebElement ElementEnd=driver.findElement(By.xpath("//*[text()='tuodongduodong']"));
//实例化Actions
Actions CM=new Actions(driver);
CM.clickAndHold(ElementStart)
.moveToElement(ElementEnd)
.release(ElementEnd)
.perform();
五、下拉框多选
HTML源码
<td>多选下拉框</td>
<select id="selects" multiple="multiple">
<option label="java">java</option>
<option label="c">c</option>
<option label="c++">c++</option>
<option label="VB">VB</option>
<option label="php">php</option>
<option label="python">python</option>
<option label="ruby">ruby</option>
</select>
Java代码
//获取下拉框中所有的文本元素
List<WebElement> list=driver.findElements(By.xpath("//*[@id='selects']/option"));
//实例化Actions
Actions AtList=new Actions(driver);
//按下CONTROL键
AtList.keyDown(Keys.CONTROL)
//点击第一个元素,第一个元素是被默认选中的,所以不想选择第一个就再点一下
.click(list.get(0))
//点击第二个元素
.click(list.get(2))
//点击第四个元素
.click(list.get(3))
//释放CONTROL键
.keyUp(Keys.CONTROL)
//执行
.perform();
Robot类
按下按键 keyPress()
释放按键 keyRelease()
public void Robot() throws AWTException{
driver.get("https://www.baidu.com/");
//实例化Robot
Robot rb=new Robot();
//按下CONTROL键
rb.keyPress(KeyEvent.VK_CONTROL);
//按下s键
rb.keyPress(KeyEvent.VK_S);
Thread.sleep(1000);
//松开s键
rb.keyRelease(KeyEvent.VK_S);
//松开CONTROL键
rb.keyRelease(KeyEvent.VK_CONTROL);
}
java-selenium-java鼠标键盘操作Actions类和Robot的更多相关文章
- selenium模拟鼠标键盘操作
简单操作: 1.点击(鼠标左键)页面按钮:click() 2.清空输入框:clear() 3.输入字符串:send_keys()submit提交表单: 1.一般情况可以点击搜索按钮来搜索 2.也可以用 ...
- Java+selenium之WebDriver模拟鼠标键盘操作(六)
org.openqa.selenium.interactions.Actions类,主要定义了一些模拟用户的鼠标mouse,键盘keyboard操作.对于这些操作,使用 perform()方法进行执行 ...
- Java&Selenium 模拟鼠标方法封装
Java&Selenium 模拟鼠标方法封装 package util; import org.openqa.selenium.By; import org.openqa.selenium.W ...
- java selenium webdriver处理JS操作窗口滚动条
未经作者允许,禁止转载!!! java selenium webdriver处理JS操作窗口滚动条 java selenium webdriver处理JS操作窗口滚动条 import org.open ...
- Python+Selenium自动化-模拟键盘操作
Python+Selenium自动化-模拟键盘操作 0.导入键盘类Keys() selenium中的Keys()类提供了大部分的键盘操作方法:通过send_keys()方法来模拟键盘上的按键. # ...
- selenium webdriver(4)---模拟鼠标键盘操作
webdriver提供Actions来模拟鼠标悬浮.拖拽和键盘输入等操作,详细代码见org.openqa.selenium.interactions.Actions.本文通过几个实例来说明Action ...
- WebDriver API——鼠标及键盘操作Actions
在自动化中我们可能需要用到鼠标或者是键盘操作,在webdriver中是Actions类进行这些操作的. 代码如下: Actions action = new Actions(driver); //-- ...
- python selenium鼠标键盘操作(ActionChains)
用selenium做自动化,有时候会遇到需要模拟鼠标操作才能进行的情况,比如单击.双击.点击鼠标右键.拖拽等等.而selenium给我们提供了一个类来处理这类事件--ActionChains sele ...
- selenium之 玩转鼠标键盘操作(ActionChains)
用selenium做自动化,有时候会遇到需要模拟鼠标操作才能进行的情况,比如单击.双击.点击鼠标右键.拖拽等等.而selenium给我们提供了一个类来处理这类事件——ActionChains sele ...
随机推荐
- Java进阶知识03 Hibernate的基础配置详解
1.Hibernate的原理/流程步骤 1.通过Configuration().configure(); 读取并解析hibernate.cfg.xml配置文件,并创建一个configuration对象 ...
- js一维数组转换为二维数组
function arrTrans(num, arr) { // 一维数组转换为二维数组 const iconsArr = []; // 声明数组 arr.forEach((item, index) ...
- PHP-windows下安装
下载 Apache下载地址:http://httpd.apache.org/download.cgi PHP下载地址:http://php.net/downloads.php 解压 解压到安装路径下H ...
- 「Luogu P5602」小E与美食
题目链接 戳我 \(Solution\) 这道题只需要枚举吃\(k\)个美食,最后在取前\(k\)大的美味值.对于每个算出答案后取\(max\) \(Code\) #include<bits/s ...
- 使用 VS2015 编译并调试 ffmpeg
导读 ffmpeg 是音频处理方面非常强大非常有名的开源项目了,然而如 雷神 所说,“FFMPEG 难度比较大,却没有一个循序渐进,由简单到复杂的教程.现在网上的有关FFMPEG的教程多半难度比较大, ...
- HearthBuddy卡牌无法识别
界面上无法识别,提示是 [Unidentified card ID :DAL_010][Unidentified card ID :DAL_415] Unidentified card ID :HER ...
- koa 基础(六)应用级路由中间件
1.应用级路由中间件 app.js /** * 应用级路由中间件 */ // 引入模块 const Koa = require('koa'); const router = require('koa- ...
- 转载:一文详解SQL解析与应用
转载地址:http://www.elecfans.com/emb/20180618696111.html 数据库作为核心的基础组件,是需要重点保护的对象.任何一个线上的不慎操作,都有可能给数据库带来严 ...
- 一、初识Spring Boot框架
一.搭建Spring Boot环境 1.选择Project,选择Spring Initializr 2.选择Sdk与默认url 3.点击 Next 4.修改一下Group信息和Artifacet,Ne ...
- leetcode378 有序矩阵中第k小的元素
排序后取数组第k个元素,遍历需要n^2的复杂度,查找插入logn,时间复杂度O(n^2logn).方法很笨,完全就是STL过于牛x运行通过的. class Solution { public: int ...