2016-07-19 147 views
0

启动IE浏览器,我无法启动IE浏览器运行在C#编写我的硒自动化测试。无法使用硒的webdriver用C#

我知道这个问题是我没有设置为相同级别的安全设置。

我也知道,正常解决这个问题的方法是简单地选择在IE浏览器的安全选项卡中的所有区域相同的安全级别。但我的工作使安全标签对我无效。有没有人知道这个问题的另一个解决方法?

//Start Opening browser 
DesiredCapabilities caps = DesiredCapabilities.InternetExplorer(); 
caps.SetCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true); 
driver = new InternetExplorerDriver(caps); 
driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);  
driver.Manage().Window.Maximize(); 
driver.Navigate().GoToUrl(this.baseURL); 

预先感谢您!

回答

0

实测值的溶液中。除了忽略保护模式设置,我也忽略缩放设置和点击不起作用,所以我也忽略本地事件。

这是新代码:

var options = new InternetExplorerOptions() 
{ 
    InitialBrowserUrl = baseURL, 
    IntroduceInstabilityByIgnoringProtectedModeSettings = true, 
    IgnoreZoomLevel = true, 
    EnableNativeEvents = false 
}; 

driver = new InternetExplorerDriver(options);  
driver.Manage().Window.Maximize(); 
driver.Navigate().GoToUrl(this.baseURL); 
0

是的,你可以使用DesiredCapabilities类硒的webdriver

IE司机//设置能力,忽略所有区域的浏览器保护模式设置的做到这一点。

DesiredCapabilities caps = DesiredCapabilities.internetExplorer(); 
caps.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true); 

//使用新功能初始化InternetExplorerDriver实例。

WebDriver driver = new InternetExplorerDriver(caps); 
driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS); 

希望同样的代码适合你。

+1

我得到的错误“OpenQA.Selenium.IE.InternetExplorerDriver”不包含定义“INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS” – EEdwards

+0

你能发布您的代码在这里?您使用的是哪个版本的IE驱动程序? – Naseem

+0

我使用IEDriverServer_x64_2.53.1作为我的代码,我会更新我的帖子,包括一些。 – EEdwards