jenkins配置allure报告

使用python+pytest做测试,并在jenkins配置allure展示报告
本文为mac环境下本地的配置,windows应该差不多

步骤如下:

  1. 下载allure
    下载 allure.zip ,下载地址:allure-github:
    https://github.com/allure-framework/allure2/releases
    我之前下载的是2.14.0版本

  2. jenkins安装allure插件,安装后重启jenkins
    在这里插入图片描述

  3. jenkins配置allure、java环境
    在Global Tool Configuration里配置

allure环境配置:
在这里插入图片描述

java环境配置:
在这里插入图片描述

  1. jenkins新建一个自由风格的项目
    1)General,点击高级,然后选中“使用自定义的工作空间”,填写项目所在目录(项目代码在本地)
    在这里插入图片描述
    2)构建,选择Execute shell
    alluredir填写报告数据文件的存储路径
pytest -v --alluredir=report_jenkins/result testcase/test_api.py

在这里插入图片描述
3)构建后操作,选择Allure Report
**注意:**此处Results-Path要填和2)中alluredir的路径一样
在这里插入图片描述
4)配置完成,点击保存,就可以构建了

报告展示

构建完后,点击Allure Report可直接查看报告了
在这里插入图片描述
报告展示:
在这里插入图片描述

报告无数据/404问题

遇到这些问题,一般是在构建后操作Allure Report的路径填写不对。
Results-Path的路径要和pytest运行alluredir填写的路径一致,详细见上方配置步骤4的第2第3点

另外,构建后操作Allure Report中Results-Path的路径貌似不能填写变量。
如下,我尝试过在jenkins生成一个时间变量后,将变量添加到pytest运行、allure报告路径中。
在这里插入图片描述
在这里插入图片描述
运行后,在本地的目录下是有生成本次时间运行的result、html文件,在本地也可正常打开allure报告。
但是,在jenkins打开报告后404了,所以我判断是构建后操作Allure Report中Results-Path的路径不能填写变量。
在这里插入图片描述

思考

关于上面我为什么想在报告路径加个时间变量呢?
我想的是写死报告路径后,后面的报告是否会覆盖了前面的报告,导致无法查看历史报告。

于是我自作聪明地想,我要加一个时间变量!把每次生成的报告按执行时间分文件夹存储,那我就可以查看每次的报告啦!

实际上也如我所想在我本地项目的文件夹按时间分文件夹生成了报告文件。但是!在jenkins上打开404了。

于是,我把时间变量去了。。执行了几次不同的数据,查看历史报告,可正常查看!并不是都是最新的报告数据。

最后我找了一下jenkins构建记录,发现原来是在每次构建记录文件里已经存储了报告数据…所以每次打开可查看到那一次的报告数据
在这里插入图片描述
提醒:每次存储报告数据的话,执行多了很占用空间,可以配置一下丢弃旧的构建

over…

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐