如何在Selenium测试中触发粘贴操作

时间:2017-07-31 13:59:05

标签: selenium-webdriver paste geckodriver safaridriver

我尝试在/ keys中传递Ctrl + V,但在最新版本的Selenium(v3.4.0)中不推荐使用API​​

Webdrivers早先遵循JSONWire协议。因此,要在焦点元素上发送密钥,WebdriverIO模块使用以下路由。 /session/:sessionId/keys https://github.com/SeleniumHQ/selenium/wiki/JsonWireProtocol#sessionsessionidkeys

较新版本的webdriver遵循新的W3C标准: https://www.w3.org/TR/webdriver/

它有/session/{session id}/element/{element id}/value https://www.w3.org/TR/webdriver/#element-send-keys

但效率并不高。键组合的工作方式不同。

2 个答案:

答案 0 :(得分:1)

这应该有效:

driver.findElement(By.id("id")).sendKeys(Keys.chord(Keys.CONTROL,"v"));

我认为没有弃用。

答案 1 :(得分:0)

尝试使用模拟键盘键和字符串选择的JAVA Robot对象来保存要粘贴到剪贴板中的文本。