python+pytest单元测试框架之在Jenkins上生成Allure测试报告

简介: 上篇我们通过Allure插件生成了测试report,并通过打开浏览器的方式查看图形化测试report,那要集成都Jenkins中去,并以邮件的方式发送测试report要怎么做呢?请看以下操作一、搭建环境1.

上篇我们通过Allure插件生成了测试report,并通过打开浏览器的方式查看图形化测试report,那要集成都Jenkins中去,并以邮件的方式发送测试report要怎么做呢?请看以下操作

一、搭建环境

1.jenkins环境搭建见《手把手教你搭建Jenkins+Jmeter+Ant自动化集成环境》中的Jenkins部分,这里不做介绍

二、在jenkins中配置插件

1.分别安装插件  Allure Jenkins Plugin 、HTML Publisher plugin

a.在Jenkins的页面中点击“系统管理”->"管理插件",搜索“allure”,在搜索结果页,选择“Allure Jenkins Plugin”进行安装。安装完成之后重启一下Jenkins。 

img_e0f7f0708ba924a0ca9258f548191b65.png
Jenkins界面

进入插件管理界面,选择“可选插件”->在右上角过滤编辑框中写入"Allure",按回车键,然后勾选Allure,点击直接安装

img_e871151d9d26c47772d51a545f64a62f.png
安装Allure插件

b.进入插件管理界面,选择“可选插件”->在右上角过滤编辑框中写入"HTML",按回车键,然后勾选HTML Publisher,点击直接安装

img_daabe1ed343b3868735a5f23b6ad6d5f.png
安装HTML Publisher
img_496feaf47f3fa970e3f3011828dcba13.png
安装过程
img_cfd89f4fd703c16308d7ad5f033f2e84.png
安装完成
img_2ac7b25017e9442716fdcaf103b43498.png
重启Jenkins

重启后可在“插件管理”界面查看到已安装成功的插件和插件版本

img_f2d72b15ff3ed9392d30dea6958f2963.png
查看安装好的插件1
img_f2582e3cab1bca306501fcb46aa0dc88.png
查看安装好的插件2

2.添加allure执行工具

下载allure压缩文件allure-commandline.zip ,解压并添加allure路径至path环境变量

img_e35f1eb8b64733cd26b8134575a9b806.png
配置path

3.在Jenkins的主界面中找到并进入“(Global Tool Configuration)全局工具管理”页面

img_72bee8ef6ba14778bda543b722e14753.png
Global Tool Configuration管理界面

找到Allure Commandline安装 字样,点击新增Allure Commandline

img_08379f82c9a4831d269b1ffabf857035.png
安装Allure Commandline

点击后,在弹出下面的页面,输入Allure的命令别名和版本(这里我选择最新版本号)后,点击Apply 和Save

img_a91091b48e4c1ef550dcb409175b6cd3.png
保存Allure配置

三、配置Job

1.在Jenkins主界面点击新建,进入如下界面,建立 jenkins 持续集成项目, 这里选择自由风格的项目,按照步骤执行操作后点击OK

img_ac34f80546c1d066c5e75d706b0cc702.png
输入项目名称

2.点击OK后进入Allure Report界面,如下图所示

img_7567378dd29fbca46287e87692163f96.png
进入项目配置界面

3.在Allure Report界面,分别配置“构建”和“构建后操作”

a.配置构建步骤:进入Allure Report界面,找到“构建”下方的“增加构建步骤”,下来选择Excute Windows batch command

img_11dad462bf88fffeac514da31395194f.png
配置构建步

b.输入如下配置步骤指令:

D:

cd \work\pytest

py.test -s -q --alluredir  ${WORKSPACE}/report

img_9b457b24f7433ec384fb8b3270233e9a.png
配置指令
img_1f69491d3d147e555c113784cebdf3b3.png
查看输出的log信息

原因:jenkins执行命令,会把命令生成一个批处理文件执行,而pytest命令对于批处理来说是外部命令,所以要加call表示调用。而jenkins执行windows命令,若退出代码不为0 ,则jenkins会将构建标记为失败,所以需要加上exit 0表示执行完成退出

解决方法:构建命令在py.test前面加上call,最后加上exit 0

img_ffb5f39a023b0b91fd127f8bd9da242e.png
重构指令
img_d4820ad5cbe795baa3d687021c368c09.png
运行结果打印信息

c.在构建后操作下拉一栏选择“Allure Report”,进入“Allure Report”界面,写入保存报告的路径名称“report”,在“Properties”一栏分别写入Key和Value对应的变量值和存放测试用例文件的路径,如下图所示:

img_90eb2897428f12799fdc4030f5effbd2.png
配置report路径

这里需要注意一点就是:执行指令生成测试报告的路径名称和保存测试报告的路径名称必须一致,不然会提示错误。如下图设置

img_f2c1d6ee350d567b8f64045980732cc6.png
设置测试报告名称

四、查看运行结果

在Jenkins界面点击“立即构建”,会在左下角出现进度条显示,当进度条显示完成后,刷新下当前界面,可以在页面右侧看到运行结果,点击界面的“Allure Report”字样,可查看该测试用例运行的详细情况

img_eafca94a6071578c54b3af94cebf553a.png
运行用例
img_af3493cea49ff1633da981378a1c0325.png
运行结果1
img_21afee65461d1019bf9a635f477576bf.png
运行结果2
img_81aac9ac37e71dc22c63d8a9fe9d2bd9.png
运行结果3
img_07a481b83addd7e61d799784d6838f54.png
运行结果4
目录
相关文章
|
2月前
|
安全 测试技术 网络安全
如何在Python Web开发中进行安全测试?
如何在Python Web开发中进行安全测试?
|
2月前
|
安全 关系型数据库 测试技术
学习Python Web开发的安全测试需要具备哪些知识?
学习Python Web开发的安全测试需要具备哪些知识?
40 4
|
22天前
|
IDE 测试技术 开发工具
10个必备Python调试技巧:从pdb到单元测试的开发效率提升指南
在Python开发中,调试是提升效率的关键技能。本文总结了10个实用的调试方法,涵盖内置调试器pdb、breakpoint()函数、断言机制、logging模块、列表推导式优化、IPython调试、警告机制、IDE调试工具、inspect模块和单元测试框架的应用。通过这些技巧,开发者可以更高效地定位和解决问题,提高代码质量。
157 8
10个必备Python调试技巧:从pdb到单元测试的开发效率提升指南
|
2月前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
138 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
1月前
|
敏捷开发 测试技术 持续交付
自动化测试之美:从零开始搭建你的Python测试框架
在软件开发的马拉松赛道上,自动化测试是那个能让你保持节奏、避免跌宕起伏的神奇小助手。本文将带你走进自动化测试的世界,用Python这把钥匙,解锁高效、可靠的测试框架之门。你将学会如何步步为营,构建属于自己的测试庇护所,让代码质量成为晨跑时清新的空气,而不是雾霾中的忧虑。让我们一起摆脱手动测试的繁琐枷锁,拥抱自动化带来的自由吧!
|
2月前
|
监控 安全 测试技术
如何在实际项目中应用Python Web开发的安全测试知识?
如何在实际项目中应用Python Web开发的安全测试知识?
40 4
|
2月前
|
Web App开发 测试技术 数据安全/隐私保护
自动化测试的魔法:使用Python进行Web应用测试
【10月更文挑战第32天】本文将带你走进自动化测试的世界,通过Python和Selenium库的力量,展示如何轻松对Web应用进行自动化测试。我们将一起探索编写简单而强大的测试脚本的秘诀,并理解如何利用这些脚本来确保我们的软件质量。无论你是测试新手还是希望提升自动化测试技能的开发者,这篇文章都将为你打开一扇门,让你看到自动化测试不仅可行,而且充满乐趣。
|
2月前
|
jenkins Devops Java
DevOps实践:Jenkins在持续集成与持续部署中的价值
【10月更文挑战第27天】在快速发展的软件开发领域,DevOps实践日益重要。Jenkins作为一款流行的开源自动化服务器,在持续集成(CI)和持续部署(CD)中扮演关键角色。本文通过案例分析,探讨Jenkins在Java项目中的应用,展示其自动化构建、测试和部署的能力,提高开发效率和软件质量。
80 2
|
5月前
|
jenkins 持续交付 开发者
自动化部署:使用Jenkins和Docker实现持续集成与交付
【8月更文挑战第31天】本文旨在为读者揭示如何通过Jenkins和Docker实现自动化部署,从而加速软件开发流程。我们将从基础概念讲起,逐步深入到实际操作,确保即使是初学者也能跟上步伐。文章将提供详细的步骤说明和代码示例,帮助读者理解并应用这些工具来优化他们的工作流程。
|
1月前
|
监控 jenkins Linux
从 Jenkins 持续集成出发:探究如何监控员工电脑屏幕
Jenkins 在企业信息化管理中用于自动化构建、测试和部署,提高开发效率。本文讨论了其重要性,并从技术角度探讨了屏幕监控的可能性,但明确反对非法监控,强调应合法合规地管理企业和尊重员工隐私。
75 12