接上文,我们说到我们有两个方案:
- Allure服务器管理方案
- Jenkins-Allure插件方案
本文中,以Jenkins+Allure插件方案,若有需求去看Allure服务器管理方案,可自行去本人其他文章中翻,感谢~
背景
抛出问题:
- 跑完自动化生成的Allure测试报告是如何管理的?
- 我的Allure测试报告怎么只能本地展示啊?
- 别人怎么访问我的Allure测试报告链接?
- 我的测试用例中有截屏怎么在Allure报告展示?
环境要求
- Jenkins
- Python
- JDK
Jenkins配置
安装插件
- 登录到 Jenkins 服务器。
- 导航到 管理 Jenkins > 管理插件。
- 在 可用 标签页中,搜索 “Allure Jenkins Plugin”。
- 选择插件后点击 安装后重启。
在构建项目中使用 Allure
- 打开你的 Jenkins 项目,点击 配置。
- 在构建环境设置中,找到 增加构建后操作,选择 Allure Report。
- 配置 Allure 报告的生成,包括结果目录和报告目录。
- 保存。
代码配合
在上面我们已经添加好Allure的构建后操作,但是配置毕竟是配置,还是需要和我们的代码相匹配上的,因此在这里我们确认一下我们的代码是否与jenkins配置所匹配。
我的config配置文件,我是将这些路径配置写在配置文件中
# 项目根目录
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
# allure报告目录
REPORT_FILES = BASE_DIR + '/report'
代码调用,带上–alluredir参数并将allure生成的报告存放在此目录中,与jenkins形成匹配关系
args = [f"--alluredir={config.REPORT_FILES}/json/", f"--clean-alluredir",]
pytest.main(args)
运行结果
在上述Jenkins和代码我们都配置完毕之后,运行结束之后,在Jenkins运行结果之后就会出现一个构建后置操作的Allure Report的图标,点进去就可以看到allure样式的测试报告,如图:
点进去就可以看到完整的Allure测试报告了
自动化代码
在最后,我们可以想尽办法去优化最后一波。比如:能不能让自动化报告运行结束之后,做个简单汇总输出测试通过率,并且把测试报告的链接附带上,毕竟没有人会闲着没事一天到晚蹲在Jenkins面前,开搞!
Jenkins-Allure报告的链接逻辑
在这里我们观察到Allure报告的链接地址,无非就是 https://{IP}:{端口}/job/{job名称}/{构建number}/allure这个样式组成的,如图
那我们在代码里就这样写:
def get_jenkins_info():
jenkins_info = argparse.Namespace(
job_name=os.getenv('JOB_NAME', 'DefaultJobName'),
build_number=os.getenv('BUILD_NUMBER', '0'),
build_url=os.getenv('BUILD_URL', 'http://defaulturl/'),
node_name=os.getenv('NODE_NAME', 'DefaultNode'),
workspace=os.getenv('WORKSPACE', '/default/workspace'),
build_user=os.getenv('BUILD_USER_ID', 'NA')
)
# 日志记录环境信息
logger.info(f"{jenkins_info}")
return jenkins_info
jenkins_info = get_jenkins_info()
report_url = f"{config.JENKINS_WORK}/{jenkins_info.job_name}/{jenkins_info.build_number}/allure/"
如此,就可以将allure的测试报告链接输出出来了,至于文章上述的常量就懒得贴了,自行补全。至此,大功告成!
结语
通过 Jenkins 的 Allure 插件,我们不仅能自动化生成详细的测试报告,还能将这些报告整合入我们的 CI/CD 流程中,从而提高软件质量和开发效率。
行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,**请及时加入群: 759968159**,里面有各种测试开发资料和技术可以一起交流哦。
最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取 【保证100%免费】
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。