0

Firefox バージョン 47.0.1 が Selenium 最新バージョンと互換性がないことが既知の問題です。Firefox でさえ、代わりに Marionette を使用することを発表しています。Marionette を Geb で使用する方法について、誰かが詳細な指示を与えることができますか?

Maven プロジェクトとして、すべてのバージョンの Selenium を Geb で試しましたが、うまくいきませんでした。次のバージョンを試しました。

2.50.0

2.50.1

2.51.0

2.52.0

2.53.0

2.53.1

2.6.0

2.7.0

2.8.0

2.9.0

ここで質問するのが適切でない場合は、ご案内ください。

4

4 に答える 4

2

GebConfig.groovy に次の構成があります。

firefox {
    System.setProperty("webdriver.gecko.driver","path/geckodriver")
    driver = {new MarionetteDriver()}
}

私はセレン3.0.1を使用しており、-Dgeb.env=firefoxシステム プロパティを使用して、Firefox の構成を確実に取得し、正常に動作するようにしています。

よろしく

于 2016-10-31T19:27:11.683 に答える
1

selenium.hq.org.downloadsから Selenium 標準バージョン 2.53.1 の最新バージョンをダウンロードし、最新バージョンの Firefox を使用してみてください。

于 2016-07-14T06:53:49.663 に答える
0

Firefox のバージョン 48 では、マリオネットを使用することが唯一の解決策のようですが、これを Geb で動作させることはまだできていません。

これは私がGebConfig.groovyで試したことです:

environments {

firefox {
    driver = {
        DesiredCapabilities dc = DesiredCapabilities.firefox();
        LoggingPreferences prefs = new LoggingPreferences();
        prefs.enable(LogType.BROWSER, Level.WARNING);
        dc.setCapability(CapabilityType.LOGGING_PREFS, prefs);
        dc.setCapability("marionette", true);

        String currentDir = System.getProperty("user.dir");
        String marionetteDriverLocation = currentDir + "/WebDriver/wires";
        System.setProperty("webdriver.gecko.driver", marionetteDriverLocation);

        FirefoxProfile p = new FirefoxProfile();
        p.setPreference("webdriver.gecko.driver", marionetteDriverLocation);
        p.setPreference("webdriver.log.file", "/tmp/firefox_console");
        p.setPreference("toolkit.telemetry.enabled", false);
        p.setPreference("geo.enabled", false);
        p.setPreference("plugins.update.notifyUser", false);

        p.setPreference("datareporting.healthreport.service.enabled", false);
        p.setPreference("datareporting.healthreport.uploadEnabled", false);
        p.setPreference("datareporting.policy.dataSubmissionEnabled",false);
        p.setPreference("datareporting.healthreport.service.firstRun", false);
        p.setPreference("datareporting.healthreport.logging.consoleEnabled", false);
        p.setPreference("reader.parse-on-load.enabled", false);

        dc.setCapability(FirefoxDriver.PROFILE, p);

        def driver = new FirefoxDriver(dc)
        driver.manage().timeouts().pageLoadTimeout(45, TimeUnit.SECONDS)
        return driver
    }
于 2016-08-18T19:41:51.813 に答える