2015-10-26 4 views
1

Я использую сценарий оболочки для запуска испытаний транспортира. Я хочу убедиться, что если тест не сработает (код выхода! = 0), он снова запустится - в три раза больше. Я уже использую Teamcity, но Teamcity отправляет электронное письмо «FAIL» и только затем пытается снова. Я хочу, чтобы тест выполнялся три раза перед отправкой сообщения. это часть моего сценария:Протранслятор - повторный запуск теста, если не удается

if [ "$#" -eq 0 ]; 
then 
/usr/local/bin/protractor proactor-config.js --suite=sanity 

теперь я хочу, чтобы как-то проверить, был ли выход Code 0 и нет - запустить снова. Спасибо.

ответ

1

функция для проверки состояния

function test { 
    "[email protected]" 
    local status=$? 
    if [ $status -ne 0 ]; then 
     echo "error with $1" >&2 
    fi 
    return $status 
} 

test command1 
test command2 
2

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

# defaults to 3 attempts 
protractor-flake -- protractor.conf.js 

Или programatically.

Одна хорошая вещь здесь в том, что она будет перезагружена только . spec файлы, а не ваш тестовый набор.

Для этого в очереди выдачи протранслятора существует feature request. Вероятно, он не будет запекаться в ядре структуры.

+0

спасибо, я попробую и дам вам знать, как это работает. – user2880391

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