pytest系列(四)- pytest+allure+jenkins - 持续集成平台生成allure报告

pytest是什么

pytest是python的一款测试框架,拥有unittest的功能并比它更丰富。

allure是什么

有非常多的优秀的测试框架,但却是有非常少优秀的报告工具可以展示非常清楚的用例执行过程和结果。

allure是一款开源的,专门用来展示测试结果的工具,目的是希望团队内部每一个人都可以看到非常清楚的测试结果。

allure可以与非常多的著名测试框架做集成。

像java语言,可以与junit4,junit5,TestNG测试框架集成。

python语言,可以与pytest,behave,nose测试框架集成。

allure会将测试用例的执行数据保存到xml文件当中,再利用allure的命令行将文件转换成html形式呈现出来。

allure的官方地址:http://allure.qatools.ru/

安装allure命令行

官网提供了每个平台的,命令行安装方式。

以下是手动安装方式,适用于各平台:

1、从Maven Center下载最新的安装包:

http://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/

目前是2.12.1的版本。

2、将包解压到任何一个目录。建议不要选C盘或者路径很深的。比如D:\allure-command-2.12.1

3、跳转到解压后的bin目录下面,windows下执行allure.bat。其它平台执行allure.

4、配置allure的环境变量:

5、在命令行当中运行allure —version。

allure与pytest的集成

在allure安装完成之后,需要与pytest集成,能够在pytest运行完成之后,生成allure的文件 。

1、安装pytest的allure支撑插件。

pip命令行:pip install allure-pytest

2、在执行pytest命令时,添加allure命令参数:—alluredir=Outputs/allure (相对于pytest命令所在目录的测试报告目录)

1 if __name__ == ‘__main__‘:
2     pytest.main(["-s","-v","--html=Outputs/reports/pytest.html",
3                  "--alluredir=Outputs/allure"])   # allure文件生成的目录
             

3、等待pytest执行完所有的测试用例,在Outputs/allure下会生成一些文件。

在cmd命令行当中,执行:allure serve 测试结果文件目录,就会生成漂亮的html报告。

allure与jenkins的集成

allure与jenkins集成之后,可以直接在jenkins上,直接查看到上图的allure结果。

并因为jenkins的构建记录都存在,所以可以看到历史构建曲线图,用例数的变化、通过率的变化、耗时的变化等均可查看到。

集成步骤如下:

1、在jenkins上安装allure插件。

Step1: 去jenkins插件网站上下载allure插件最新版本:

http://mirrors.jenkins-ci.org/plugins/allure-jenkins-plugin/

Step2: 打开jenkins,在系统管理 —> 插件管理 —>Advanced —> Upload Plugin

上传.phi格式的插件,点击[上传]操作。

会自动跳转到以下页面。此处黄色球的提醒是指:此插件已经安装了,jenkins需要重启使此更新生效。

若是第一次安装,应该是蓝色球。

可将jenkins服务重新重启,使安装的插件生效。

2、在jenkins 全局工具当中配置allure命令行。

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

3、在Job当中,配置allure报告展示:

针对以上,我对job做了以下调整:

1、将当前job的工作空间调整为,我的pytest用例所在工程目录:

2、在build当中,直接执行1中目录下的python文件(包含了pytest生成allure报告的命令)

配置完成之后,立即构建此工程。连续构建几次,有了历史记录之后

原文地址:https://www.cnblogs.com/Simple-Small/p/11512337.html

时间: 2024-10-12 01:13:02

pytest系列(四)- pytest+allure+jenkins - 持续集成平台生成allure报告的相关文章

Jenkins 持续集成平台构建之通过git提交代码

一.概述 上一篇文章介绍了Jenkins结合svn来构建jar包,本文介绍另一种代码提交的方式git,并结合maven来构建代码包. 实验环境: IP: 10.0.90.27 系统: Centos6.6 x86_64 软件包: Jenkins  2.9 Tomcat   8.0.36 JDK      8.92 maven    3.3.9 git 二.安装步骤 1.安装jdk #rpm -ivh jdk-8u92-linux-x64.rpm  Preparing...             

linux学习:持续集成篇--安装Jenkins持续集成平台-05

一.Jenkins需要使用maven,所以首先安装maven 1.解压 [[email protected] tar]# tar -zxvf apache-maven-3.5.0-bin.tar.gz -C /opt 2.重命名 [[email protected] opt]# mv apache-maven-3.5.0/ maven 3.配置maven环境变量 export JAVA_HOME=/opt/jdk export MAVEN_HOME=/opt/maven export PATH=

2.GitLab与Jenkins 持续集成平台使用方法

1 配置 Jenkins 使用 gitlib 更新代码 2 实现 gitlib 触发 Jenkins 自劢部署 3 增加 Build Pipeline 插件以流程图的形式展示各个 Job 的顺序 15.1 配置 Jenkins 使用 gitlib 更新代码 登录 gitlab http://10.10.10.11/ 用户名: root 密码:yanglin123 登录 jenkins http://10.10.10.11:198/ 用户名: admin 密码: 123456 15.1.1 查看

12.Jenkins持续集成企业实战

阅读目录: Jenkins持续集成企业实战1.1 目前主流网站部署的流程1.2 Jenkins持续集成简介1.3 Jenkins持续集成组件1.4 Jenkins平台安装部署1.5 Jenkins相关概念1.6 Jenkins平台设置1.7 Jenkins构建JOB工程1.8 Jenkins自动化部署1.9 Jenkins插件安装1.10 Jenkins邮件配置1.11 Jenkins多实例配置1.12 Jenkins+Ansible高并发构建 Jenkins持续集成企业实战 构建企业自动化部署

接口自动化平台搭建(四),自动化项目Jenkins持续集成

一.Jenkins的优点 1.传统网站部署流程 ??一般网站部署的流程 这边是完整流程而不是简化的流程 需求分析-原型设计-开发代码-内网部署-提交测试-确认上线-备份数据-外网更新-最终测试 ,如果发现外网部署的代码有异常,需要及时回滚. 一般是运维来做 1.功能测试 2.上线的时间 3. jenkins 4.运维 5.功能测试 2.Jenkins部署流程 ??我们可以通过jenkins工具平台实现全自动部署+测试,是一个可扩展的持续集成引擎,是一个开源软件项目,旨在提供一个开放易用的软件平台

Jenkins持续集成-自动化部署脚本的实现《python》

读者须知:1.本手记本着记续接前面的两张手记内容整理2.本手记针对tomcat部署测试环境实现 最近工作比较繁忙,导致这章一直拖延,没有太抽出时间来总结.要实现Jenkins端的持续集成,其实在CI服务配置端很容易,难点呢?就是如何实现自动化的部署.我的脚本设计就是为了解决以下难题: 难点一.如何使得自动化部署脚本更通用 我用的脚本,依赖依赖一个配置文件的模块化,让每一个应用业务模块更加通用.自动化所执行的命令呢?我也是设计想法本着更加通用平台的原则,至少对于tomcat+java or jav

Jenkins持续集成。

Jenkins持续集成 自动化运维 Jenkins所有包下载 链接:https://pan.baidu.com/s/1SXg-Av99xeyR3OdvJhv7Dg 提取码:dara Jenkins环境搭建 由于Jenkins是依赖于java的,所以先介绍java环境的搭建 (1)使用官方的二进制包解压安装(上方有下载链接) 官方二进制包的下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133

jenkins持续集成--看我如何从1到代码自动部署

jenkins持续集成看我如何从1到代码自动化部署 背景 近期由于工作原因需要学习jenkins持续化集成.对于一个好学又帅气的我来说.学习他还不是手到擒来.公司为一个中小型创业公司,在部署代码上面,很少用gitlab.jenkins等等,也没有清晰的生产环境-测试环境-线上环境之分.唯一有的就是写完代码-登陆服务关闭服务,上传代码-开启服务.这样往往会到来很多问题,同时也会给程序员带来很多繁琐的工作.这不,公司内部整顿,需要一套清晰的流程,而且为了减轻程序员的负担,于是就希望采用gitlab+

使用jenkins构建持续集成平台

jenkins +   Maven + svn/git + tomcat 的持续集成平台 项目管理流程: 需求分析----原型设计----开发代码----提交测试-----内部测试-----确认上线(确认上线前可能经过多种环境的测试) ------上线到生产环境-----最终测试------如果出现问题代码回滚. 传统代码上线: 开发人员开发完成-----打好包(war.jar)-----交给运维人员上线(上传.拷贝) jenkins持续集成简介: 持续集成是一种软件开发实践,对于提高软件开发效