有人可以帮我解决这段代码。目前它将在第4行投诉 :webDriver = new FirefoxDriver(ff_ep_profiles) 说它无法解析构造函数。我需要加载我的扩展,因此我正在创建一个配置文件
FirefoxProfile ff_ep_profile = new FirefoxProfile(new File("C:\\Users\\admin\\AppData\\Roaming\\Mozilla\\Firefox\\Profiles\\81uy033g.FirefoxEP"));
FirefoxOptions option=new FirefoxOptions();
option.setProfile(ff_ep_profile);
webDriver = new FirefoxDriver(ff_ep_profile);
答案 0 :(得分:2)
使用 Selenium v3.11.x , GeckoDriver v0.20.0 和 Firefox Quantum v59.0.2 时,可以使用不同的选项进行调用新的/现有的 Firefox个人资料
如果您希望在每次运行测试执行时使用新 Firefox配置文件,则可以使用以下代码块:< / p>
System.setProperty("webdriver.gecko.driver", "C:\\path\\to\\geckodriver.exe");
FirefoxOptions options = new FirefoxOptions();
options.setProfile(new FirefoxProfile());
WebDriver driver = new FirefoxDriver(options);
driver.get("https://www.google.com");
如果您希望在每次运行测试执行时使用现有 Firefox配置文件,首先必须创建 Firefox配置文件,请按照Creating a new Firefox profile on Windows上的说明进行操作。
现在您有两种方法可以调用您创建的 Firefox配置文件,如下所示:
您可以使用 FirefoxOptions 类来调用现有的 Firefox配置文件,您可以使用以下代码块:
System.setProperty("webdriver.gecko.driver", "C:\\path\\to\\geckodriver.exe");
ProfilesIni profile = new ProfilesIni();
FirefoxProfile testprofile = profile.getProfile("debanjan");
FirefoxOptions opt = new FirefoxOptions();
opt.setProfile(testprofile);
WebDriver driver = new FirefoxDriver(opt);
driver.get("https://www.google.com");
您还可以使用 DesiredCapabilities 类设置现有的 Firefox个人资料,然后在 FirefoxOptions 的实例中合并可以使用以下代码块:
System.setProperty("webdriver.gecko.driver", "C:\\path\\to\\geckodriver.exe");
ProfilesIni profile = new ProfilesIni();
FirefoxProfile testprofile = profile.getProfile("debanjan");
DesiredCapabilities dc = DesiredCapabilities.firefox();
dc.setCapability(FirefoxDriver.PROFILE, testprofile);
FirefoxOptions opt = new FirefoxOptions();
opt.merge(dc);
WebDriver driver = new FirefoxDriver(opt);
driver.get("https://www.google.com");