2016-09-23 2 views
0

Я использую каркас транспортира-огурца, который отделен от транспортира. Мой транспортир версии 4.0.9, который был вытолкнут прошлой ночью.Проходчик в параллельном режиме -

Мой вопрос: При работе транспортир параллельно: protractor protractor.conf.js генерируемый результаты JSON-файл только показывает последний тест, чтобы закончить. В принципе, этот JSON-файл переопределяет себя, поэтому наш плагин Bamboo cucumber показывает только один результат теста, когда было несколько файлов тестовых функций.

Например, если у вас есть 2 теста и ваш конфиг настроен так:

//Protractor.conf.js

multiCapabilities: [{ 
    'browserName': 'chrome', 
    maxInstances: 1, 
    shardTestFiles: true, 
    }, { 
    'browserName': 'chrome', 
    shardTestFiles: true, 
    maxInstances: 1, 
    },], 

или даже так:

multiCapabilities: [{ 
    'browserName': 'chrome', 
    maxInstances: 2, 
    shardTestFiles: true, 
    }], 

И мой огурецОптимы:

cucumberOpts: { 
    require: [ 
     conf.paths.e2e + '/steps/**/*Steps.js', 
     conf.paths.e2e + '/hooks.js', 
     conf.paths.e2e + '/env.js',//For Cucumber framework i.e framework: custom 
     conf.paths.e2e + '/otherHooks.js', 
    ], 
    tags: ['[email protected]', '[email protected]'], 
    format: 'pretty', 
    //'fail-fast': true 
    } 

Появится 2 экземпляра хрома, но в конце каждый экземпляр будет генерировать собственный файл результатов JSON вместо одного кумулятивного файла результата json.

Как консолидировать результаты из всех экземпляров хрома, которые запускались параллельно в один файл результатов JSON, чтобы наш плагин Bamboo cucumber мог отображать все тесты, которые выполнялись параллельно, а не только последний, который занял больше времени?

Снова я хочу создать SINGLE json-файл со всеми результатами в конце и НЕ многими json-файлами, только для уточнения; Еще раз спасибо за глядя на этот вопрос, который я "уверен, что тонна людей борется с прямо сейчас.

ответ

0

У меня была аналогичная проблема некоторое время назад, и я решить эту проблему, добавив отметку времени в файл JSON.

Добавление этой строки в Protractor.conf.js

resultJsonOutputFile: 'reports/'+Date.now()+'-protractor-report.json'

+0

Спасибо за быстрый ответ Адольфо, не добавляя метку времени причины иметь несколько файлов JSon? А как бы вы кормить все эти JSon файлов для плагина огурца? Мы используем бамбук для нашего ci-конвейера a и он ожидает один файл json в определенном месте. – pelican

+0

Да, вы правы. У меня есть несколько json-файлов. Возможно, в следующих выпусках рамок огурца транспортира они дают несколько результатов в одном и том же json. https://github.com/mattfritz/protractor-cucumber-framework/issues/46 –

+0

Еще раз спасибо, что ссылка, которую вы отправили, указывает на точную проблему, с которой я столкнулся. Я читал разные стратегии и задавался вопросом, столкнулись ли вы с этим дорожным блоком и каково ваше обходное решение? Я попробую некоторые предложения в этой ссылке, но я также думаю, что могу добиться этого с помощью задачи gulp, так как я не использую grunt и в основном собираю все json-файлы с помощью этого Data.now(), а затем объединяю их все таким образом, чтобы json parsers и журналисты могли понять и отобразить все результаты тестов. Пожалуйста, дайте мне знать, как вы консолидируете свои json-файлы в среде с множеством возможностей – pelican

Смежные вопросы