FirefoxDriver()不接受ProfilesIni实例作为参数

时间:2018-08-29 07:04:43

标签: selenium selenium-firefoxdriver

我正在遵循此页面上的示例来设置要使用的自定义配置文件:

http://toolsqa.com/selenium-webdriver/custom-firefox-profile/

但是在我的代码中,我收到“删除参数以匹配Firefox驱动程序”错误:

    ProfilesIni profile = new ProfilesIni();

    FirefoxProfile myprofile = profile.getProfile("testProfile");

    WebDriver driver = new FirefoxDriver(myprofile); // does not like myprofile as an argument here

谢谢

更新

我能够通过稍微修改try-catch的解决方案来解决此问题:

    ProfilesIni profile = new ProfilesIni();
    FirefoxProfile myprofile = profile.getProfile("testProfile"); //added this

    FirefoxOptions options = new FirefoxOptions();
    options.setProfile(myprofile);

1 个答案:

答案 0 :(得分:2)

根据FirefoxDriver的API文档,没有FirefoxDriver(ProfilesIni)签名,并且ProfilesIni没有基类,也没有实现可用作FirefoxDriver的构造函数签名的接口。

通过FirefoxDriver(FirefoxOptions)签名。 FirefoxDriver有一个setProfile(FirefoxProfile profile)方法。

这应该有效:

ProfilesIni profile = new ProfilesIni();

FirefoxOptions options = new FirefoxOptions();
options.setProfile(profile.getProfile("testProfile"));

WebDriver driver = new FirefoxDriver(options);