Не удалось запустить транспортир с IE

Я запускаю тест e2e с помощью grunt-protractor-runner на виртуальной машине Windows 7. Моя версия узла — 0.10.25. Моя версия транспортира — 2.5.1.

Я думаю, что проблема в конфигурации транспортира.

Когда я бегу, я получаю это:

 Using the selenium server at http://127.0.0.1:4444/wd/hub
[launcher] Running 1 instances of WebDriver
ERROR - Unable to start a WebDriver session.

/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/atoms/error.js:113
  var template = new Error(this.message);
                 ^
UnknownError: Unable to find executable for product Opera Desktop
    at new bot.Error (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/atoms/error.js:113:18)
    at Object.bot.response.checkResponse (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/atoms/response.js:106:9)
    at /home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/webdriver.js:152:24
    at /home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/base.js:1582:15
    at [object Object].webdriver.promise.ControlFlow.runInNewFrame_ (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:1654:20)
    at notify (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:465:12)
    at notifyAll (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:442:7)
    at resolve (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:420:7)
    at fulfill (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/promise.js:535:5)
    at /home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/goog/base.js:1582:15
==== async task ====
WebDriver.createSession()
    at Function.webdriver.WebDriver.acquireSession_ (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/webdriver.js:149:22)
    at Function.webdriver.WebDriver.createSession (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/webdriver.js:123:30)
    at Builder.build (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/selenium-webdriver/builder.js:294:22)
    at DriverProvider.getNewDriver (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/lib/driverProviders/driverProvider.js:38:7)
    at Runner.createBrowser (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/lib/runner.js:180:37)
    at /home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/lib/runner.js:257:21
    at _fulfilled (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/q/q.js:797:54)
    at self.promiseDispatch.done (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/q/q.js:826:30)
    at Promise.promise.promiseDispatch (/home/luca/my-project/node_modules/grunt-protractor-runner/node_modules/protractor/node_modules/q/q.js:759:13)
[launcher] Process exited with error code 1
>> 
Fatal error: protractor exited with code: 1

Вот мой файл конфигурации:

'use strict';
/* globals jasmine */

var path = require('path');
var FsCleaner = require('./lib/fs-cleaner');

exports.config = {

    seleniumAddress: 'http://127.0.0.1:4444/wd/hub',
    /*    seleniumAddress: 'http://10.0.2.15:4444/wd/hub',
     */
    specs: require('./specList.js'),
    params: {
        screenshotsBasePath: path.resolve(__dirname, './screenshots')
    },
    capabilities: {
        'browserName': 'internet explorer',
        'platform': 'ANY',
        'version': '9',

        // 'ie.ensureCleanSession':true,
        // 'nativeEvents':false
    },

    allScriptsTimeout: 300 * 1000,
    getPageTimeout: 300 * 1000,
    jasmineNodeOpts: {
        defaultTimeoutInterval: 300 * 1000
    },
    onPrepare: function() {
        var SpecReporter = require('jasmine-spec-reporter');
        // add jasmine spec reporter
        jasmine.getEnv().addReporter(new SpecReporter({
            // displayStacktrace: true
            displayStacktrace: 'none',
        }));
        FsCleaner.cleanScreenshotsFolder();
        FsCleaner.cleanDownloadFolder();
    }

};

person Luca De Franceschi    schedule 06.11.2015    source источник
comment
Похоже, вы используете grunt транспортир, можете ли вы поделиться конфигурацией и для него?   -  person Nick Tomlin    schedule 06.11.2015


Ответы (1)


Во-первых, попробуйте скачать драйвер IE отсюда http://www.seleniumhq.org/download/ Попробуйте использовать 32-битную и 64-битную версии.

На мой взгляд, тестирование в IE очень и очень запутанно. Если вы хотите протестировать в win7 и т. д., вам нужно изменить regs. Чтобы получить дополнительную информацию, перейдите по этой ссылке: https://code.google.com/p/selenium/issues/detail?id=8302#c18

Если вам удастся настроить IE и транспортир. Могут возникнуть некоторые проблемные вопросы. Например: Медленная печать. Для получения дополнительной информации проверьте это: https://code.google.com/p/selenium/issues/detail?id=5116

Однако, если вы используете предыдущую версию драйвера IE, это может решить проблемы с медленной печатью.

person ktom    schedule 03.02.2016