我有一个Jenkins DSL管道,在其中进行了加特林模拟测试。
Maven测试报告BUILD SUCCESS
,但是jenkins Post Stage失败块仍然得到执行
管道中的阶段块
stage('Run Perf Tests'){
steps {
script{
catchError(buildResult: 'FAILURE', catchInterruptions: true, message: "Perf Tests failed", stageResult: 'FAILURE') {
sh """
echo "***************** Running the maven tests **************"
$MAVEN_HOME/bin/mvn clean test -DappHostNode1=${APP_FQDN_NODE1} -DappHostNode2=${APP_FQDN_NODE2} -DappPort=${APPPORT}
"""
}
}
}
post{
failure{
script{
commonSteps.setTestStatus()
}
}
}
}
catchError块捕获的所有错误是什么?
我确实在测试运行期间看到了Gatling的TimeoutException
[main] DEBUG io.gatling.http.ahc.HttpEngine - Couldn't execute warm up request https://gatling.io
java.util.concurrent.ExecutionException: java.util.concurrent.TimeoutException: Request timeout to not-connected after 1000 ms
但这不会影响Maven测试的结果。
jenkins catchError块将其视为错误吗?