java - Selenium 3.5 IE sendKeys 通过 Selenium Hub 编码

标签 java selenium internet-explorer-11

我在一个 UTF-8 编码的 Java 项目中使用 Selenium 3.5.3 和 IEDriver x32 在 Windows 7 和 IE 11 上。通过 selenium hub(Docker,Grid Console v.3.5.2)建立连接。与节点的直接连接按预期工作。

当使用特殊字符调用 sendKeys 时:

element.sendKeys(Keys.LEFT_CONTROL, "a", Keys.LEFT_CONTROL, Keys.BACK_SPACE, "test", Keys.TAB);

Selenium 会输入 ?a??test?

使用 Selenium 2 我没有遇到这个问题,上面的代码选择了以前输入的值 (ctrl + a),删除了内容,输入 test 并按下 tab 键触发更新事件.

(Keysorg.openqa.selenium.Keys)

我不确定如何解决这个问题,如有任何帮助,我们将不胜感激。

最佳答案

要执行这样的操作,您可能应该更新您的代码以使用 Actions喜欢:

Actions action = new Actions(driver);
action.keyDown(Keys.CONTROL).sendKeys("a").keyUp(Keys.CONTROL).sendKeys("test").keyDown(Keys.TAB).build().perform();

关于java - Selenium 3.5 IE sendKeys 通过 Selenium Hub 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46101791/

相关文章:

java - 如何在 Spring Boot 中配置额外的类路径?

java - Java 公历日历和日期格式

testing - 计划采用 Watir 来满足我们的 UI 测试需求 - 它是正确的工具吗?

javascript - Internet Explorer 重新加载 IFrame

javascript - Internet Explorer 返回错误长度的字符串

html - IE 11 伪元素::之前的绝对背景

java - 如何通过 Spring Ldap 授权获取操作属性

java - 关于 ResultSet 的查询

c# - 无论我设置的间隔等待时间如何,Selenium WebDriver 都会在 60 秒时超时

java - 如何使用 Selenium WebDriver 打开多个窗口