量角器 - 如果失败则再次运行测试

时间:2015-10-26 07:45:35

标签: shell protractor angularjs-e2e false-positive

我使用shell脚本来运行量角器测试。 我想确保如果测试失败(退出代码!= 0),那么它将再次运行 - 最多三次。 我已经在使用Teamcity,但Teamcity发送了“失败”。电子邮件,然后再尝试。我希望测试在发送消息之前运行三次。 这是我脚本的一部分:

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

现在我想以某种方式检查退出代码是否为0而不是 - 再次运行。 感谢。

2 个答案:

答案 0 :(得分:2)

我写了一个名为protractor flake的小模块。它可以通过cli

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

programatically

这里有一个好处是它只会重新运行失败的规范文件,而不是你的测试套件。

量角器问题队列中存在长期feature request。它可能不会被纳入框架的核心。

答案 1 :(得分:1)

检查状态的功能

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

test command1
test command2