当我设置文本时,Selenium 在 IE11 中破坏了我的页面

Selenium is breaking my page in IE11 when I set text

我在 chrome 上使用 Selenium 进行了一些自动化测试,但现在当我在 IE11 中尝试它们时,我得到了这个奇怪的行为:我登陆了一个带有搜索框和搜索按钮的页面,非常标准,当我 set(" ")sendKeys(" ") 到输入文本框时,页面 "moves" 到左边它已经坏了,想象屏幕中央的页面突然左边距消失,页面向左延伸......有人知道我在说什么吗? 有什么帮助吗?

顺便说一句,我也尝试在其他元素中执行一些操作,它们不会破坏页面,而且单击文本框也不会成功,当我在其中放置文本时会发生这种情况

嗯,"sendKeys" 可能就是我们所说的 "native event",因此它在很大程度上取决于 IE 二进制驱动程序的实现。例如,Selenium 只正式支持 Firefox 31.0.6 及以上版本的本机事件,而不支持 32+ 版本。 IE11 非常新,也有不同的版本(因为它会自动更新)。因此,如果您需要执行非本机的 sendKeys(通常没有必要),那么您可以使用 JavascriptExecutor 对象编写代码。让我们知道这是否适合您。

-- 补遗-- Selenium 团队会告诉您他们不想在 Selenium 中包含 javascriptExecutor 功能,但正是在这种情况下,执行程序功能才显示出其真正的价值。