如何使用selenium web驱动器在C#中以私有模式打开IE

时间:2017-10-26 11:22:44

标签: c# selenium internet-explorer

我尝试使用以下代码并在Internet Explorer的私有模式下运行测试,但尝试启动浏览器时出错。

代码

InternetExplorerOptions options = new InternetExplorerOptions()
    {
        ForceCreateProcessApi = true,
        BrowserCommandLineArguments = "-private",
    };
   IWebDriver driver = new InternetExplorerDriver(options);

错误例外

  

异常:OpenQA.Selenium.WebDriverException:   OpenQA.Selenium.WebDriverException:意外的错误启动   IE浏览器。无法使用CreateProcess()API。使用   CreateProcess()使用Internet Explorer 8或更高版本,值为   HKEY_CURRENT_USER \ Software \ Microsoft \ Internet中的注册表设置   Explorer \ Main \ TabProcGrowth必须为'0'.....

即使在删除ForceCreateProcessApi = true行后,它也无法在私人浏览器中打开

2 个答案:

答案 0 :(得分:0)

这对我有用

DesiredCapabilities capabilities = DesiredCapabilities.internetExplorer();
capabilities.setCapability(InternetExplorerDriver.FORCE_CREATE_PROCESS, true); 
capabilities.setCapability(InternetExplorerDriver.IE_SWITCHES, "-private");

答案 1 :(得分:0)

请考虑这篇文章https://github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver您需要添加提及的注册表值