1.说明
首先,Jenkins的构建是否通过和测试脚本是否有失败断言其实没有关系,Jenkins构建只和文件执行是否正常有关,所以,如果想要达到一旦Test中测试脚本有出现失败断言构建就失败的效果,需要通过Jenkins中额外的脚本处理。
2.Mac/Linux系统
mac或者LInux系统可以通过Jenkins里构建中的shell脚本实现。
思路是:在每次构建前先删除之前的测试报告目录(或者文件),接下来跑测试脚本,最后通过脚本判断测试脚本的报告中是否存在失败断言,如果有就将程序运行结果置为非正常运行;没有就正常运行并退出。
shell脚本:
#!/bin/sh
cd ./${ReportName}/
grep '<failure>true</failure>' jtl/${ReportName}.jtl
if [ $? -ne 0 ]; then
echo "NOT exist failure cases" && exit 0
else
echo "Exist failure cases" && exit 1
fi
3.WINDOWS系统
windows系统可以通过windows batch conmand实现
cd .\TestReport
rd /s /Q .\jtl
rd /s /Q .\html
批处理命令:
cd .\TestReport
findstr /i "<failure>true</failure>" jtl\TestReport.jtl
if NOT %ERRORLEVEL% == 0 (
echo "无失败用例" && exit 0
)else (
echo "有失败用例" && exit 1
)