selenium webdriver学习 13 – 如何利用Actions类模拟鼠标和键盘的操作

TestWhite 2018年4月18日14:59:52
评论
1036字阅读3分27秒
云小站
如何把一个元素拖放到另一个元素里面的时候,用到了一个Actions类。这一节主要分析一下这个Actions类。
这个actions类,主要定义了一些模拟用户的鼠标mouse,键盘keyboard操作。对于这些操作,使用perform()方法进行执行。
actions类可以完成单一的操作,也可以完成几个操作的组合。
单一的操作

单一的操作是指鼠标和键盘的一个操作。如鼠标左键按下、弹起或输入一个字符串等。
前面涉及到鼠标键盘操作的一些方法,都可以使用actions类中的方法实现,比如:click,sendkeys。

WebElement  element = dr.findElement(By.id("test"));
WebElement  element1 = dr.findElement(By.id("test1"));
element.sendKeys("test");
element1.click; 

用Actions类就可以这样实现:

//新建一个action
Actions action=new Actions(driver);
//操作
WebElement element=dr.findElement(By.id("test"));
WebElement element1=dr.findElement(By.id("su"));
action.sendKeys(element,"test").perform();
action.moveToElement(element1);
action.click().perform(); 
看起来用Actions类实现click和sendKeys有点烦索
组合操作

组合操作就是几个动作连在一起进行操作。如对一个元素的拖放。

(new Actions(dr)).dragAndDrop(dr.findElement(By.id(item)), target).perform(); 
 
可以直接调用dragAndDrip()方法,也可以像下面濱示的一样把几个操作放一起实现
Action dragAndDrop = builder.clickAndHold(someElement)
       .moveToElement(otherElement)
       .release(otherElement)
       .build().perform();
其他鼠标或键盘操作方法可以具体看一下API里面的org.openqa.selenium.interactions.Actions类

继续阅读
  • 我们QQ群
  • QQ扫一扫
  • weinxin
  • 微信公众号
  • 公众号扫一扫
  • weinxin
TestWhite
  • 本文由 发表于 2018年4月18日14:59:52
  • 请您在转载时请务必保留本文链接:https://www.playezu.com/10916.html
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: