【发布时间】:2019-04-04 06:17:13
【问题描述】:
我一起运行多个 (2) IE Web 驱动程序。(用于用户端和管理端测试)
当 InternetExplorer WebDriver 单击打开模式弹出窗口的链接/按钮时,登录页面在新窗口中打开(异常)。
当 ie webdriver 弹出窗口时,我可以在几分之一秒内看到浏览器应该加载的正确地址(在 URL 行中),但它立即更改为登录 url,并且需要输入用户名和密码。
我在this link 发现了同样的问题,
我在那里提出了解决方案,但我仍然没有解决问题,我得到一个输入窗口而不是预期的窗口。
see this screenshot
- 我的 IE 版本是 11。
- 我的 Selenium.WebDriver 是 3.141.0.0
- 我的ie webdriver是IEDriverServer_x64_3.141.5
我的 InternetExplorerOptions:
private static InternetExplorerOptions ieOptions = new InternetExplorerOptions
{
EnsureCleanSession = true ,
EnableNativeEvents = true ,
RequireWindowFocus = true ,
EnablePersistentHover = true ,
ForceCreateProcessApi = true ,
BrowserCommandLineArguments = "-framemerging -private"
};
我添加了注册表项:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main\FrameMerging\(DWORD)00000000
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main\TabProcGrowth\(DWORD)00000000
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE\iexplorer.exe\(DWORD)00000000
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE\iexplorer.exe\(DWORD)00000000
已编辑:
通过 Deepak-MSFT 参考资料,我了解到该问题是由多个 IE 网络驱动程序实例引起的。
我还尝试通过在代码中添加ConfirmCleanSession = true选项来终止IE驱动程序,并通过从命令行运行以下语句手动(在运行测试之前);
taskkill / F / IM iexplore.exe / T
taskkill / F / IM IEDriverServer.exe / T
但一旦我将 2 个 IE 网络驱动程序设置为一起工作,它就没有帮助。
(当我尝试仅在一个驱动程序上运行测试时 - 效果很好!)
我将不胜感激帮助解决问题!
【问题讨论】:
-
与link 不重复。这个链接是我的另一个问题,但它指的是另一个问题。我会把它的标题改成更清晰的。
标签: c# selenium selenium-webdriver webdriver internet-explorer-11