Dev*_*ave 4 c# selenium internet-explorer
我试图使用Selenium Internet Explorer驱动程序但是当我尝试实例化它时它会破坏:
[TestInitialize]
public void TestInitialise() {
ieDriver = new InternetExplorerDriver();
}
Run Code Online (Sandbox Code Playgroud)
出现以下错误:
必须将启用保护模式设置为所有区域的相同值(启用或禁用).(NoSuchDriver).
我发现一个明显的解决我的问题在这里,这表明设置驾驶员的DesiredCapabilities,如图所示:
var capabilitiesInternet = new OpenQA.Selenium.Remote.DesiredCapabilities();
capabilitiesInternet.SetCapability("ignoreProtectedModeSettings", true);
IWebDriver webDriver = new InternetExplorerDriver(capabilitiesInternet);
Run Code Online (Sandbox Code Playgroud)
唯一的问题是,我使用的是最新版本的,我能找到的驱动程序,并没有越权为InternetExplorerDriver这需要DesiredCapabilities作为一个参数.
现在有一些新的或其他的设置方式DesiredCapabilites而不是我使用的例子吗?
该设置将解决问题,但会引入一些微妙的问题.你没有正确设置IE的保护模式吗?这是正确的解决方案.
这里的指南生活在这里:
https://github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver
基本上只需在IE中为每个区域关闭保护模式.
或者,如果您真的必须使用覆盖功能,那么您要么做两件事:
使用该InternetExplorerOptions课程.注意属性的名称,它给你一个很大的线索,使用它不是一个好主意.
var options = new InternetExplorerOptions;
options.IntroduceInstabilityByIgnoringProtectedModeSettings = true;
var driver = new InternetEplorerDriver(options);
Run Code Online (Sandbox Code Playgroud)
或者使用RemoteWebDriver,它可以接受任何ICapabilities接口的DesiredCapabilites实现,它实现:
var capabilities = new DesiredCapabilities("internet explorer", string.Empty, new Platform(PlatformType.Windows));
capabilities.SetCapability("ignoreProtectedModeSettings", true);
var webDriver = new RemoteWebDriver(capabilities);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12265 次 |
| 最近记录: |