browser.download.manager.showWhenStarting可能无法覆盖

时间:2014-02-21 09:35:48

标签: c# selenium selenium-webdriver

我在C#项目上使用selenium webdriver for firefox。我使用NuGet包管理器安装了最新的webdriver(2.40)之后发生了这个错误:

  

'Class'的类型初始值设定项引发了异常。 --->   System.ArgumentException:Preference   browser.download.manager.showWhenStarting可能无法覆盖:   冻结值= False,请求值= False。

我的代码:

FirefoxProfile profile = new FirefoxProfile();
profile.SetPreference("browser.download.manager.showWhenStarting", false);
webdriver = new FirefoxDriver(profile);

第二行引发错误。 你知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:6)

最近更新了.NET绑定以匹配其他语言绑定的行为,使用预设的配置文件设置列表,如果需要FirefoxDriver正常工作,其中一些设置不可更改。您尝试设置的首选项是“冻结”设置之一。它应该已经具有您尝试将其设置为的值。如果没有,则驱动程序中可能存在错误。


您可以验证设置是否符合您的要求,但查看异常详细信息:

示例:

profile.SetPreference("network.http.phishy-userpass-length", 255);

抛出错误:

  

System.ArgumentException:可能无法覆盖首选项network.http.phishy-userpass-length:冻结值= 255 ,请求值= 255

意味着冻结值已经正确,并且SetPreference()可以被移除。