【Python自动化】之运用Git+jenkins集成来运行展示pytest+allure测试报告
目录:
一、安装allure
# 安装allure
brew install allure

安装完之后,查看是否成功!
# 查看allure版本
allure --version

二、生成allure报告
1、安装allure-pytest插件
为什么要安装这个呢,因为需要与pytest集成,能够在pytest运行完成之后,生成allure的文件
# 安装allure-pytest
pip install allure-pytest
2、生成报告
代码目录结构

新建report报告目录,然后运行test_v2ex_api2.py文件生成报告在report里。
# 运行文件并且在report目录下生成报告文件
pytest test_v2ex_api2.py --alluredir ./report/


3、打开报告
# 打开report目录下的报告
allure serve ./report
运行完命令之后自动打开报告地址,如下所示:


4、另一种生成allure报告
上一种报告生成时,命令行还在一直运行中,只有停止运行才能继续写命令,下面这种是直接生成index.html文件,直接本地打开即可。
# 运行下面的命令,会自动生成allure-report目录
allure generate ./report
生成的报告不需要命令行一直运行:


选中index.html文件,右键【Open in Browser】打开浏览器:


如果下次再运行的时候一定加上“--clean”

# 再一次生成报告
allure generate ./report --clean
但是有一个问题,report目录下的报告文件数量会越来越多

查看报告得知,会显示历史记录,估计可能是展示这个用的吧

三、结合jenkins来集成pytest+allure 返回目录
1、首先去jenkins插件网站上下载allure插件最新版本:
http://mirrors.jenkins-ci.org/plugins/allure-jenkins-plugin/

2、打开jenkins,在系统管理 —> 插件管理 —>Advanced —> Upload Plugin
下载的.hpi的文件上传至jenkins上

安装插件
安装成功

3、在jenkins 全局工具当中配置allure命令行
在 系统管理 —> 全局工具配置 —> 当中做以下配置(allure和jdk),配置完并保存:
①配置jdk

# 搜索java路径 which java @:/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/bin/java
②配置allure

# 查看brew安装的allure目录
brew list allure
③新建jenkins项目

④配置allure报告


# shell命令
cd /Users/zhangc/Desktop/GitTest/project_Buger_2/Pytest
pytest test_v2ex_api2.py --alluredir ./report/
# allure generate ./report --clean 不用这行
exit 0 # <==必须加上这个否则会报错

⑤加上工作目录
不加上的话,否则生成的报告会为空的。

⑥自动构建并查看生成的报告

查看报告!!!

四、结合Git集成Jenkins+Pytest+Allure测试报告 返回目录
1、配置git地址


2、执行shell并配置allure报告路径
cd /Users/zhangc/.jenkins/workspace/Pytest+Allure+Jenkins+Git集成/Pytest
rm -rf ./report/*
# ①一种写法
pytest test_v2ex_api.py --alluredir ${WORKSPACE}/Pytest/report
# ②另一种写法
pytest test_v2ex_api.py --alluredir ./report
exit 0


3、易错地方

五、附录 返回目录
*** 只是看了看
**** 参考了一点
***** 参考很多
①感谢五娃儿的文章:《Mac+Python3.6.5 + Pytest3.8.0 + Allure2.7 环境搭建》***
②感谢minluoying的文章:《Mac os + pytest + allure》****
③感谢幸运球与倒霉蛋的文章:《pytest+allure+jenkins持续集成》*****
④感谢Believer的文章:《Pytest单元测试框架——Pytest+Allure+Jenkins的应用》*****
⑤感谢tang.yongyue的文章:《Mac+Pytest+Allure+Jenkins常见问题汇总》***
⑥感谢wuwei丶的文章:《Python+Pytest+Allure+Git+Jenkins接口自动化框架》 ****
⑦感谢月月0001的文章:《jenkins+pytest+allure+git环境搭建》*****
【Python自动化】之运用Git+jenkins集成来运行展示pytest+allure测试报告的更多相关文章
- Jenkins集成taffy进行自动化测试并输出测试报告
本文主要介绍Jenkins集成taffy/nose框架进行自动化测试并输出测试报告方法. 0. 测试环境 Jenkis主节点部署在CentOS系统上,子节点为Win10 64位系统(即我们本机运行自动 ...
- python自动化运维篇
1-1 Python运维-课程简介及基础 1-2 Python运维-自动化运维脚本编写 2-1 Python自动化运维-Ansible教程-Ansible介绍 2-2 Python自动化运维-Ansi ...
- Python+Pytest+Allure+Git+Jenkins接口自动化框架
Python+Pytest+Allure+Git+Jenkins接口自动化框架 一.接口基础 接口测试是对系统和组件之间的接口进行测试,主要是效验数据的交换,传递和控制管理过程,以及相互逻辑依赖关系. ...
- Jenkins(3)拉取git仓库代码,执行python自动化脚本
前言 python自动化的脚本开发完成后需提交到git代码仓库,接下来就是用Jenkins拉取代码去构建自动化代码了 新建项目 打开Jenkins新建一个自由风格的项目 源码管理 Repository ...
- [python]Pytest+selenium+git+jenkins持续集成
1安装pytest框架 &pip install pytest #pytest &pip install pytest-html #pytest html测试报告 2.工程介绍 ...
- flow.ci + Github + Slack 一步步搭建 Python 自动化持续集成
理想的程序员必须懒惰,永远追随自动化法则.Automating shapes smarter future. 在一个 Python 项目的开发过程中可能会做的事情:编译.手动或自动化测试.部署环境配置 ...
- git jenkins 基本部署 jenkins持续集成
1.什么是持续集成? 持续集成来简化我们的工作 还能让产品可以快速迭代,同时还能保持代码高质量产出.2.Jenkins的安装配置: [root@jenkins ~]# yum inst ...
- Docker + Jenkins + Gitlab + Pytest + Allure 接口自动化测试之持续集成实战终极教程
实战教程篇 前言 这边就不教大家怎么用 pytest 写项目了哦,下面有系列文章能帮助你快速入门 Pytest + Allure 这一篇教程主要是教如何从 0 到 1 搭建自动化测试的持续集成环境 后 ...
- Docker+jenkins 运行 python 自动化
一.实现思路 在 Linux 服务器安装 docker 创建 jenkins 容器 根据自动化项目依赖包构建 python 镜像(构建自动化 python 环境) 运行新的 python 容器,执行 ...
- linux服务器中Jenkins集成git、Gradle持续构建Springboot项目
Jenkins是用java编写的开源持续集成工具,目前被国内外各公司广泛使用.本章教大家如何在linux服务器中使用Jenkins自动发布一个可作为linux服务发布的Springboot项目. 自动 ...
随机推荐
- .NET App 与Windows系统媒体控制(SMTC)交互
当你使用Edge等浏览器或系统软件播放媒体时,Windows控制中心就会出现相应的媒体信息以及控制播放的功能,如图. SMTC (SystemMediaTransportControls) 是一个Wi ...
- 羊城杯初赛部分misc
羊城杯初赛部分misc Ez_misc i春秋刚考过的CVE,win11截图漏洞CVE-2023-21036(acropalypse) https://github.com/frankthetank- ...
- 从 Helm 到 Operator:Kubernetes应用管理的进化
Helm 的作用 在开始前需要先对 kubernetes Operator 有个简单的认识. 以为我们在编写部署一些简单 Deployment 的时候只需要自己编写一个 yaml 文件然后 kubec ...
- yb课堂 实战之路由拦截和订单模块 《四十二》
前置守护 路由拦截功能开发 文档:https://router.vuejs.org/zh/guide/advanced/navigation-guards.html router里面配置需要登陆的路由 ...
- yb课堂实战之订单和播放记录事务控制 《十六》
开启事务控制 启动类:@EnableTransactionManagement 业务类,或者业务方法@Transactional 默认事务的隔离级别和传播属性 启动类上加注解 Service层加注解
- vue小知识~ref和$refs
$refs表示的是获取被ref标识的标签的DM实例. 用法简单: 标签上: <div ref='refName'></div> 获取: this.$refs.refName 就 ...
- Django model 层之Models与Mysql数据库小结
Django model 层之Models与Mysql数据库小结 by:授客 QQ:1033553122 测试环境: Python版本:python-3.4.0.amd64 下载地址:https:// ...
- RDD | 算子 | 持久化
分布式集合对象上的API称之为算子 算子分为两类: transformation算子:指返回值仍然是rdd,类似于stream里的中间流 这类算子与中间流相同,是懒加载的 action算子:返回值不是 ...
- 简单认识APP项目
manifests:里面只有一个xml,是app运行配置文件 清单文件 <?xml version="1.0" encoding="utf-8"?> ...
- 【Mybatis-Plus】联表分页查询实现
参考文章: https://blog.csdn.net/weixin_43847283/article/details/125822614 上上周写的SQL案例确实可以重构,所以搬到Demo里面测试看 ...