接口测试 jenkins+pytest+allure 接口测试生成报告只显示第一次的测试结果

袁和壮 · 2020年12月08日 · 最后由 袁和壮 回复于 2020年12月11日 · 5462 次阅读

测试脚本:

jenkins 配置:

最早的构建结果:

最新的构建结果:

点击 job 页面上的报告时总显示最早的报告内容,新运行的报告没有更新到上面:


这个是什么原因呢?

共收到 9 条回复 时间 点赞

你不能在 job 里面写死一个 output 的目录,这样每次执行都覆盖了之前的记录

在 Jenkins 的 shell 里面先做一下清除 report 文件夹的操作就好了。

3楼 已删除

他的问题是,报告只显示第一次的测试结果,而不是最新的(没看出问题在哪):
python2.7 的版本,allure 报告不会自动覆盖,需要手动清理,否则报告都是旧的;
python3.0+ 的版本,allure 报告会自动化清理上一次的记录;

试试 --alluredir=“Jenkins 的工作目录”,可以在控制台输出查看,比如我的:Building in workspace /var/jenkins_home/workspace/xxx/allure-results,--alluredir=/var/jenkins_home/workspace/xxx/allure-results

Jerry li 回复

应该如何做呢?

袁和壮 回复

你可以通过 jobname 来指定对应的输出目录,具体可以参考一下我之前的记录: https://testerhome.com/articles/17504

回复

job 首页的报告(大图标)是只显示第一次,下边构建历史栏中而每次构建都是正确的。我用的是 python3.5

看起来确实是写死路径了,可以带上 $BUILD_NUMBER。
我的配置是这样,供参考,希望对你有帮助。

构建
python3 -m pytest src/testcase/${module} --alluredir report/${BUILD_NUMBER}/testdata
allure generate report/${BUILD_NUMBER}/testdata -o report/${BUILD_NUMBER}/testreport --clean

构建后操作

青禾 回复

今天对 jenkins 做了配置:

的确可以更新最新的报告了。👍 还有个小问题就是趋势图没有显示信息

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册