我有 4 个 jenkins 工作,都是关于 pytest,每个工作的 shell 命令就像
pytest -v --junitxml=result.xml || exit 0
我之所以添加 || exit 0
是因为我希望每个作业都一个一个运行,甚至任何作业都失败
我创建了一个管道作业,管道脚本如下
node {
stage('win10_chrome90_admin') {
build job: 'UI_automation_win10_chrome90_admin', propagate: false
}
stage('win10_chrome90_salesman') {
build job: 'UI_automation_win10_chrome90_salesman', propagate: false
}
stage('win10_firefox88_admin') {
build job: 'UI_automation_win10_firefox88_admin', propagate: false
}
stage('win10_firefox88_salesman') {
build job: 'UI_automation_win10_firefox88_salesman', propagate: false
}
}
因此,每次运行管道时,舞台视图始终为绿色,我无法判断是否有任何作业未通过测试,实际上图像中的第二个作业在单击其作业视图后显示为不稳定。
有没有什么办法可以让作业的网格在测试失败时显示为黄色(不稳定)?(和我点击作业后看到的一样)
在 pytestpytest-custom-exit-code
中使用 pytest 插件,因此我的测试作业中的 shell 命令类似于
pytest -v --junitxml=result.xml --suppress-tests-failed-exit-code
在我的管道工作中,管道脚本类似于
pipeline {
agent any
stages {
stage('win10_chrome90_admin') {
steps {
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE'){
build job: 'UI_automation_win10_chrome90_admin'
}
}
}
stage('win10_chrome90_salesman') {
steps {
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE'){
build job: 'UI_automation_win10_chrome90_salesman'
}
}
}
stage('win10_firefox88_admin') {
steps {
catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE'){
build job: 'UI_automation_win10_firefox88_admin'
}
}
}
}
}
最后我的管道(一个接一个地运行 4 个测试作业)运行如下,如果任何测试作业测试失败,舞台网格将显示不稳定(黄色),下一个作业将继续启动
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句