Как, так сказать, перезапустить или закрыть браузер после каждого теста-протектора
Я использую тест Protractor для веб-приложения. Я сделал какой-то поиск в Google, но я придумал zip, я хочу, чтобы каждая спецификация, которую я создала, закрывала браузер после того, как она провела весь тест в этом конкретном файле спецификации, а затем переходила к следующему файлу -специалистам, и т.д. У меня есть такие вещи, как использование "beforeAll" и "afterAll", но Jasmine не распознает эти методы. Точка в правильном направлении была бы потрясающей!
описать ( "я добавлю что-то более значимое здесь позже:)", function() {
//not sure if this method actually exist in Jasmine
afterAll(function () {
//restart browser or something of the nature
});
it('should do stuff', function () {
});
it('do stuff', function () {
});
});
затем закрыть браузер, а затем открыть резервную копию, чтобы запустить следующую спецификацию.
Ответы
Ответ 1
Говоря о перезапуске браузера между тестами, существует соответствующая конфигурация:
// If true, protractor will restart the browser between each test.
// CAUTION: This will cause your tests to slow down drastically.
restartBrowserBetweenTests: false,
Установите значение true
.
FYI. Вот начальный запрос функции:
beforeAll
и afterAll
встроены в jasmine-2.x
. Чтобы заставить их работать, вам нужно установить jasmine2
в качестве рамки тестирования в config > :
exports.config = {
...
framework: 'jasmine2',
...
}
Для jasmine-1.x
существует сторонний jasmine-beforeAll
пакет, который обеспечивает ту же самую точную функциональность.
Ответ 2
В файле protractor.conf.js:
capabilities:{
'shardTestFiles': true,
'maxInstances': 1
}
Это откроет и закроет браузер с каждым .spec файлом, но вы можете потерять некоторые возможности отчетности от стандартных плагинов. Если shardTestFiles является ложным, он откроет браузер, запустит onPrepare, запустит все тесты поочередно, а затем закроет браузер.