selenium 中action模拟键盘操作

1、普通键盘模拟

对于普通键盘,使用 sendKeys(key) 就可以实现,比如数字键、tab、空格等。

Actions action = new Actions(driver);

action.sendKeys(Keys.TAB). sendKeys(keys.NULL); //模拟按下TAB 键

action.sendKeys(Keys.SPACE). sendKeys(keys.NULL); //模拟按下空格键

Actions中的sendKeys(key)对于按键的调用并不会释放,应该再调用 sendKeys(keys.NULL) 来释放按键。
2、修饰键

对于修饰键,使用KeyDown(Key)、keyUp(Key)来实现,一般都是跟普通键组合使用的。比如Alt+F4、Ctrl+Alt+a等等。

Actions action = new Actions(driver);

action.keyDown(Keys.CONTROL); //按下 Ctrl 键

action.keyUp(Keys.CONTROL); //释放 Ctrl 键
使用快捷键Ctrl+Alt+a,可以通过下面语句来实现:

action.keyDown(Keys.CONTROL).keyDown(Keys.ALT).sendKeys(“a”).keyUp(Keys.CONTROL).keyUp(Keys.ALT).perform();
对于keyDown(Key)方法的调用,如果没有接着调用keyUp(Key)或者sendKeys(Keys.NULL) 来释放的话,这个按键将也一样保持按住状态,KeyDown(Key)、KeyUp(Keys) 方法的参数只能传修饰键, 否者将抛出IllegalArgumentException异常。

你可能感兴趣的:(自动化测试)