为什么 Windows IE 11 中的 sendKeys() 在升级到 Selenium Java 3.14.0 后不再存在?

Why sendKeys() in Windows IE 11 no longer persists after upgrading to Selenium Java 3.14.0?

创建InternetExplorerDriver的代码:

InternetExplorerOptions options = new InternetExplorerOptions();
options.setCapability("nativeEvents", false);
WebDriver ieDriver = new InternetExplorerDriver(options);

sendKeys()Selenium 3.13.0 之前完全正常工作。 但是,在我升级到上面的 3.14.0 之后,sendKeys() 将在 input 字段中键入字符,但是当焦点从该输入元素移开时,所有已键入的内容都会消失。

查看 Change Log,有一个关于 ieOptions 的简短提及:

* Add native events under se:ieOptions. (#6183)

本次改动的内容可以参考here.

如果您在代码中使用 options.setCapability("nativeEvents", false); 然后升级到上面的 Selenium 3.14.0,您可能会遇到类似的情况,即在 input HTML 元素上使用 sendKeys() 将不再存在。

将代码更改为 options.setCapability("NATIVE_EVENTS", false); 对我有用。