2

我正在使用 Selenium FirefoxDriver,无论我做什么,我都希望它从我的默认用户配置文件(插件等)开始。我得到了那个部分的工作。我还编写了一个简单的 GUI 来帮助我控制我的程序。这个 GUI 有一个启动驱动程序的按钮和另一个调用quit()的按钮。

问题:

  1. 我单击开始-> 工作正常。FirefoxDriver 加载了所有插件、书签、...
  2. 我单击关闭-> 工作正常。浏览器干净地关闭(据我所知)。
  3. 我再次单击开始-> 浏览器启动,但配置文件为空白。没有插件,什么都没有

这就是我实例化驱动程序的方式。我不知道是什么导致了这个问题。请帮忙!

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;
        }
    }
});
4

0 回答 0