如何修复Selenium和IE 11中的双字符

时间:2017-12-18 20:01:44

标签: selenium selenium-webdriver internet-explorer-11

当我发送"测试"在文本框中,网页在texbox中显示TTeesstt。

即使网络表单显示双重字符,它实际上提交给网络应用程序的内容只是原始文本。

当我使用IE 8运行测试时,文本"测试"被插入一次。

当我升级到IE 11时,文本插入速度非常慢。讨论了这个问题here

我试图解决缓慢的Sendkeys问题,并且正在使用我的代码以编程方式使用IE或Chrome。我已经退回了该代码,只是试图直接使用IE(InternetExplorerDriver类)。

我已经下载并安装了所有IE 11累积更新。

我在卡巴斯基实验室论坛上看到有关双字符问题的帖子。帖子似乎表明问题与IBM Trusteer有关。我的笔记本电脑上安装了Trusteer。但是,问题发生在远程计算机上。我通过VPN登录远程计算机。虽然不是100%肯定我不认为远程计算机有Trusteer。

环境: Windows 7 64位

InternetDriverServer 3.8.0.0,32位

IE 11.9600.1886IS,更新KB4052978 硒         

2 个答案:

答案 0 :(得分:1)

我也有这个问题。我能够通过在我的selenium代码中为我的IEDriver添加一个选项来修复它。添加选项是:

ieOptions.EnableNativeEvents = true;

不幸的是,这使我的文字输入速度减慢到每5秒约1个字符。我能够通过添加RequireWindowFocus = true来解决这个问题。

我的构造函数现在包含以下代码:

if (DriverType.IsType<InternetExplorerDriver>())

{

var ieOptions = new InternetExplorerOptions { IgnoreZoomLevel = true, 
EnableNativeEvents = true, RequireWindowFocus = true};

Driver = new InternetExplorerDriver(ieOptions);`

}

答案 1 :(得分:0)

对于那些硒缺乏症的人

多亏了约书亚,我找到了添加serenity.properties的解决方案

'../images/simeImage.png'