【发布时间】:2020-07-23 13:21:58
【问题描述】:
还有一次我来这里寻求帮助。我会尽力解释最好的方式。
如果某个测试失败,我们运行一个管道时,阶段视图不会显示特定阶段失败。只会让 Build 变得不稳定。
所以我在这里查看了一些关于它的帖子,比如这个 [https://stackoverflow.com/questions/36852310/show-a-jenkins-pipeline-stage-as-failed-without-failing-the-whole-job ]
我尝试了解决方案:catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE')。但还是一直这样显示:
如果我强制“sh”退出 1,只是为了检查它是否有效,它会显示失败:
看来我们必须通过 UFT 测试的结果,因此 Stage 呈现相同的结果。
这是我运行的构建 7 的管道,“TESTE 2 QUE FALHA”是我知道 UFT 会失败的测试,而 teste 3 是为了确保管道不会停止并继续运行阶段到即使一两个阶段失败也结束。
我可能遗漏了什么,或者我不理解这个舞台视图的动态。
感谢您的支持。
agent{
label 'S-EA311601'
}
options {
timeout(time: 60, unit: 'MINUTES')
}
stages{
stage('1'){
steps{
bat 'del /S /Q "P:\\TA\\eBankaPlus\\R3G\\TRANSFERENCIAS\\001.Transferencia Interbancaria\\Report"'
}
}
stage('TEST 1'){
steps{
uftScenarioLoad archiveTestResultsMode: 'ONLY_ARCHIVE_FAILED_TESTS_REPORT', fsUftRunMode: 'Normal', testPaths: '''P:\\TA\\eBankaPlus\\R3G\\TRANSFERENCIAS\\001.Transferencia Interbancaria'''
}
}
stage('2'){
steps{
bat 'del /S /Q "P:\\TA\\eBankaPlus\\R3G\\TRANSFERENCIAS\\004.Transferencia Conversao Divisas\\Report"'
}
}
stage('TESTE 2 QUE FALHA'){
steps{
uftScenarioLoad archiveTestResultsMode: 'ONLY_ARCHIVE_FAILED_TESTS_REPORT', fsUftRunMode: 'Normal', testPaths: '''P:\\TA\\eBankaPlus\\R3G\\TRANSFERENCIAS\\004.Transferencia Conversao Divisas'''
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE'){
}
}
}
stage('3'){
steps{
bat 'del /S /Q "P:\\TA\\eBankaPlus\\R3G\\TRANSFERENCIAS\\002.Transferencia Interbancaria Outra Conta\\Report"'
}
}
stage('TESTE 3'){
steps{
uftScenarioLoad archiveTestResultsMode: 'ONLY_ARCHIVE_FAILED_TESTS_REPORT', fsUftRunMode: 'Normal', testPaths: '''P:\\TA\\eBankaPlus\\R3G\\TRANSFERENCIAS\\002.Transferencia Interbancaria Outra Conta'''
}
}
}
}
【问题讨论】:
-
有什么可以帮助的 DevOps 吗?
标签: jenkins jenkins-pipeline hp-uft