我正在使用 Selenium FirefoxDriver,无论我做什么,我都希望它从我的默认用户配置文件(插件等)开始。我得到了那个部分的工作。我还编写了一个简单的 GUI 来帮助我控制我的程序。这个 GUI 有一个启动驱动程序的按钮和另一个调用quit()的按钮。
问题:
- 我单击开始-> 工作正常。FirefoxDriver 加载了所有插件、书签、...
- 我单击关闭-> 工作正常。浏览器干净地关闭(据我所知)。
- 我再次单击开始-> 浏览器启动,但配置文件为空白。没有插件,什么都没有
这就是我实例化驱动程序的方式。我不知道是什么导致了这个问题。请帮忙!
public static final FirefoxProfile FIREFOX_PROFILE = new ProfilesIni().getProfile("default");
public static final FirefoxBinary FIREFOX_BIN = new FirefoxBinary(new File("..."));
public static FirefoxDriver getNewFirefoxInstance() {
FirefoxDriver firefox = new FirefoxDriver(FIREFOX_BIN, FIREFOX_PROFILE);
firefox.manage().timeouts().implicitlyWait(8, TimeUnit.SECONDS);
return firefox;
}
private FirefoxDriver firefox = null;
JButton newFirefox = new JButton("Start FF");
newFirefox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
if (firefox == null){
firefox = getNewFirefoxInstance();
}
}
});
JButton closeFirefox = new JButton("Close FF");
closeFirefox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
if (firefox != null){
firefox.quit();
firefox = null;
}
}
});