本文章是解决在已有pytest框架的测试用例脚本之后,在jenkins上构建任务执行脚本并生成allure报告。
前提:1、已有pytest框架的测试用例脚本(如果你没有,可以用我的,放在文章末尾网盘自取)
2、已在本地装allure以及在python中装allure库(如果你没装,这个csdn上有很多教程)
3、已将pytest框架的测试用例脚本上传到Git
1、Pytest脚本里要写生成allure报告的命令
在你的脚本的根目录下新建一个pytest.ini文件,该文件的编码格式为ANSI编码
文件内容就把下面的代码复制下去:
[pytest]
#parameter
python_files = test_*.py
python_functions = test_*
addopts = -vs --alluredir=./allure_data --clean-alluredir
注意:addopts = -vs --alluredir=./allure_data --clean-alluredir这一行规定了报告的json文件存放的地方是与run.py同级目录下的allure_data文件夹(这个后面配置到jenkins上要保持一致)
在你的run.py文件里最后一行加上:
os.system("allure generate ./allure_data -o ./allure_report --clean")
注意:allure generate ./allure_data -o ./allure_report --clean这一行规定了报告的html文件存放的地方是与run.py同级目录下的allure_report文件夹(这个后面配置到jenkins上要保持一致)
下面示例我的run.py文件
# coding=gbk
import os
import pytest
pytest.main([])
os.system("allure generate ./allure_data -o ./allure_report --clean")
执行run.py文件,就可以看到目录多了allure_data、allure_report文件夹,在allure_report文件夹下用浏览器打开index.html,就可以看见报告了
当然你也可以在命令行执行试试看,命令行代码放下面了:
pytest -sv scripts --alluredir=allure_data
allure generate alluer_data -o allure_report --clean
下面就是配置方法
2、jenkins配置方法
确保已经在jenkins上安装了allure插件
在本机上安装allure,以及在python库中安装allure库,本文就不在此过多赘述,可以搜索allure
安装教程,进行安装,安装完之后再继续跟本教程。
在jenkins上构建项目,进入到项目设置中,将执行的代码代码选择Git并配置路径
这个就是生成日志的配置代码:
注意:这里的allure_data是python脚本里写好的json报告存放的文件夹名称!!!(上面有提过)
pytest -sv scripts --alluredir=allure_data
生成日志之后(日志是json格式的),需要根据日志生成allure的html报告,这时候就需要配置构建后操作步骤:如下图
将所需的日志路径填入path中,我们的日志路径就是上一步配置的,复制过来就好
这里配置生成html报告的路径,将来的报告会保存到这里
注意:这里的路径就是你在python脚本里规定的html文件存放的文件夹名称(上面有提过的)
点击build,执行完成后,点击allurereport,就会看到日志和报告了
提取码:1949