Protractor: Busur derajat 5.2.0:-Tidak dapat membuat layanan baru: GeckoDriverService ketika SeleniumServerJar digunakan sebagai ganti SeleniumAddress

Dibuat pada 27 Nov 2017  ·  3Komentar  ·  Sumber: angular/protractor

Hai,
Saya mendapatkan Tidak dapat membuat layanan baru: GeckoDriverService saat mencoba menggunakan firefox. Apa yang saya perhatikan adalah ketika SeleniumServerJar digunakan untuk membuka dan menutup server Selenium. Jika saya menggunakan SeleniumAddress maka semuanya bekerja dengan baik. Apakah ada cara di mana SeleniumServerJar dan firefox dapat digunakan bersama.

Versi simpul: 6.9.5
Busur derajat: 5.2.0
Selenium: 3.6
geckoDriver: 0.19
OS: Mac

Komentar yang paling membantu

Hai, ini adalah masalah yang sama dengan yang ini #4501.

Sudah ada solusi sederhana untuk ini di #4502 (sebagai penyelesaian 768fd393d1084a8da0ec6eeaa57) tetapi seseorang dari tim inti perlu meninjau PR dan menggabungkannya. Singkatnya, bagian di mana args for command untuk memulai Selenium, di mana driver tokek disediakan, hilang.

Di lib/driverProviders/ local.ts , berikut ini tidak ada:

if (this.config_.geckoDriver) {
  serverConf.jvmArgs.push('-Dwebdriver.gecko.driver=' + this.config_.geckoDriver);
}

setelah hal yang sama dilakukan untuk chromeDriver:

if (this.config_.chromeDriver) {
  serverConf.jvmArgs.push('-Dwebdriver.chrome.driver=' + this.config_.chromeDriver);
}

Berharap seseorang akan segera meninjau dan menggabungkan PR ini, dan menyelesaikan masalah yang mengganggu ini :)

Semua 3 komentar

@adityagautam Hai, bisakah Anda membagikan file konfigurasi busur derajat Anda?

@ Xotabu4 Terima kasih telah melihat masalah ini. Ini file konfigurasi saya

`biarkan HtmlScreenshotReporter = membutuhkan('busur derajat-jasmine2-screenshot-reporter');
membutuhkan("daftar-babel");

exports.config = {`

framework: 'jasmine2',
rootElement: 'body',
seleniumServerJar:'./node_modules/protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-3.6.0.jar',
geckoDriver: './node_modules/protractor/node_modules/webdriver-manager/selenium/geckodriver',
capabilities: {
    browserName: 'firefox',
    acceptSslCerts: true,
    trustAllSSLCertificates: true,
    acceptInsecureCerts:true,
    ACCEPT_SSL_CERTS:true,
},


baseUrl: 'https://shared.qa.com',

suites: {
    create: 'tests/*Create*Spec.js',
    activate: 'tests/*Activate*Spec.js'
},


jasmineNodeOpts: {
    showColors: true,
    defaultTimeoutInterval: 3600000,
    isVerbose: true
},

getPageTimeout: 120000,
allScriptsTimeout: 3600000,
delayBrowserTimeInSeconds: 0,

beforeLaunch: function() {
    return new Promise(function(resolve){
        reporter.beforeLaunch(resolve);
    });
},
afterLaunch: function(exitCode) {
    return new Promise(function(resolve){
        reporter.afterLaunch(resolve.bind(this, exitCode));
    });
},

onPrepare: function() {

    require("babel-register");

    let origFn = browser.driver.controlFlow().execute;

    browser.driver.controlFlow().execute = function () {
        let args = arguments;

        origFn.call(browser.driver.controlFlow(), function () {
            return protractor.promise.delayed(this.delayBrowserTimeInSeconds * 100);
        });

        return origFn.apply(browser.driver.controlFlow(), args);
    };

    jasmine.getEnv().addReporter(reporter);

    let getScreenSize = function () {
        return browser.driver.executeScript(function () {
            return {
                width: window.screen.availWidth,
                height: window.screen.availHeight
            };
        });
    };

    getScreenSize().then(function (screenSize) {
        browser.driver.manage().window().setSize(screenSize.width, screenSize.height);
    });

    let jasmineReporters = require('jasmine-reporters');
    let junitReporter = new jasmineReporters.JUnitXmlReporter({
            consolidateAll: false,
            savePath: 'xml_Reports',
            filePrefix: '-xmloutput',
        });
        jasmine.getEnv().addReporter(junitReporter);
}};

`

Hai, ini adalah masalah yang sama dengan yang ini #4501.

Sudah ada solusi sederhana untuk ini di #4502 (sebagai penyelesaian 768fd393d1084a8da0ec6eeaa57) tetapi seseorang dari tim inti perlu meninjau PR dan menggabungkannya. Singkatnya, bagian di mana args for command untuk memulai Selenium, di mana driver tokek disediakan, hilang.

Di lib/driverProviders/ local.ts , berikut ini tidak ada:

if (this.config_.geckoDriver) {
  serverConf.jvmArgs.push('-Dwebdriver.gecko.driver=' + this.config_.geckoDriver);
}

setelah hal yang sama dilakukan untuk chromeDriver:

if (this.config_.chromeDriver) {
  serverConf.jvmArgs.push('-Dwebdriver.chrome.driver=' + this.config_.chromeDriver);
}

Berharap seseorang akan segera meninjau dan menggabungkan PR ini, dan menyelesaikan masalah yang mengganggu ini :)

Apakah halaman ini membantu?
0 / 5 - 0 peringkat