目录:

一、安装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测试报告的更多相关文章

  1. Jenkins集成taffy进行自动化测试并输出测试报告

    本文主要介绍Jenkins集成taffy/nose框架进行自动化测试并输出测试报告方法. 0. 测试环境 Jenkis主节点部署在CentOS系统上,子节点为Win10 64位系统(即我们本机运行自动 ...

  2. python自动化运维篇

    1-1 Python运维-课程简介及基础 1-2 Python运维-自动化运维脚本编写 2-1 Python自动化运维-Ansible教程-Ansible介绍 2-2 Python自动化运维-Ansi ...

  3. Python+Pytest+Allure+Git+Jenkins接口自动化框架

    Python+Pytest+Allure+Git+Jenkins接口自动化框架 一.接口基础 接口测试是对系统和组件之间的接口进行测试,主要是效验数据的交换,传递和控制管理过程,以及相互逻辑依赖关系. ...

  4. Jenkins(3)拉取git仓库代码,执行python自动化脚本

    前言 python自动化的脚本开发完成后需提交到git代码仓库,接下来就是用Jenkins拉取代码去构建自动化代码了 新建项目 打开Jenkins新建一个自由风格的项目 源码管理 Repository ...

  5. [python]Pytest+selenium+git+jenkins持续集成

    1安装pytest框架 &pip install pytest   #pytest &pip install pytest-html  #pytest html测试报告 2.工程介绍 ...

  6. flow.ci + Github + Slack 一步步搭建 Python 自动化持续集成

    理想的程序员必须懒惰,永远追随自动化法则.Automating shapes smarter future. 在一个 Python 项目的开发过程中可能会做的事情:编译.手动或自动化测试.部署环境配置 ...

  7. git jenkins 基本部署 jenkins持续集成

    1.什么是持续集成?  持续集成来简化我们的工作 还能让产品可以快速迭代,同时还能保持代码高质量产出.2.Jenkins的安装配置:        [root@jenkins ~]# yum inst ...

  8. Docker + Jenkins + Gitlab + Pytest + Allure 接口自动化测试之持续集成实战终极教程

    实战教程篇 前言 这边就不教大家怎么用 pytest 写项目了哦,下面有系列文章能帮助你快速入门 Pytest + Allure 这一篇教程主要是教如何从 0 到 1 搭建自动化测试的持续集成环境 后 ...

  9. Docker+jenkins 运行 python 自动化

    一.实现思路 在 Linux 服务器安装 docker 创建 jenkins 容器 根据自动化项目依赖包构建 python 镜像(构建自动化 python 环境) 运行新的 python 容器,执行 ...

  10. linux服务器中Jenkins集成git、Gradle持续构建Springboot项目

    Jenkins是用java编写的开源持续集成工具,目前被国内外各公司广泛使用.本章教大家如何在linux服务器中使用Jenkins自动发布一个可作为linux服务发布的Springboot项目. 自动 ...

随机推荐

  1. css定位 position:sticky

    今天在做css定位的时候遇到一个问题,我想用fixed定位下来,但是发现这个时候定义的百分百宽度不随着父元素走了而是整个屏幕的百分百,这个就很尴尬了,也不能固定宽度吧,毕竟还要宽度自适应. 这个时候发 ...

  2. 虽然说自己是个废物,但年纪轻轻就有了120w

  3. c++ primer 第五版随笔

    1.what is std::endl ? for example, std::cout << "hello world" << std::endl; st ...

  4. 【JavaScript】js中的浅拷贝与深拷贝与手写实现

    前言 什么是深拷贝与浅拷贝?深拷贝与浅拷贝是js中处理对象或数据复制操作的两种方式.‌在聊深浅拷贝之前咱得了解一下js中的两种数据类型: 基本数据类型(6种) String.Number.Object ...

  5. Django使用 DoesNotExist 异常和 Logger 来记录异常情况

    代码不仅处理了特定的异常类型,还可以添加更多的调试信息来帮助诊断问题.可以使用 DoesNotExist 异常和 Logger 来记录异常情况. from django.core.exceptions ...

  6. 网络基础 Modbus协议学习总结

    协议简介 Modbus协议,首先从字面理解它包括Mod和Bus两部分,首先它是一种bus,即总线协议,总线就意味着有主机,有从机,这些设备在同一条总线上. Modbus支持单主机,多个从机,最多支持2 ...

  7. 一些常用的Utils总结

    1.BeanUtils.copyProperties,来自spring框架,作用是把对象的属性拷贝给另一个对象 BeanUtils.copyProperties(employeeDTO,employe ...

  8. 【Vue】接口模块化处理

    在前端Vue项目中,接口会被统一放在一个目录中管理: 一个模块的所有接口放在一个JS文件中: 文件会导入封装好的请求方法,和动态绑定的接口地址 import request from '@/utils ...

  9. 【Java】逗号拼接的取巧处理

    需求如图: 这是表的关键处理数据,页面上的输入框要做分开展示,也就是要写业务逻辑来处理 逗号拼接的取巧处理,使用了List集合toString方法来实现,然后移除括号 final String emp ...

  10. 【Tutorial C】05 操作符 & 表达式

    基本运算符 C使用运算符(operator)来代表算术运算.例如,+运算符可以使它两侧的值加在一起. 如果您觉得术语"运算符"听起来比较奇怪,那么请您记住那些东西总得有个名称. 与 ...