我在一个UTF-8编码的Java项目中使用Selenium 3.5.3和Windows 7上的IEDriver x32以及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键触发更新事件。
(Keys
是org.openqa.selenium.Keys
)
我不确定如何解决这个问题,我们将不胜感激。
答案 0 :(得分:1)
要执行此类操作,您可能需要将代码更新为使用Actions
,如:
Actions action = new Actions(driver);
action.keyDown(Keys.CONTROL).sendKeys("a").keyUp(Keys.CONTROL).sendKeys("test").keyDown(Keys.TAB).build().perform();