一:环境准备

  • 1.python3.6
  • 2.windows环境
  • 3.pycharm
  • 4.pytest-allure-adaptor
  • 5.allure2.8.0
  • 6.java1.8

pytest-allure-adaptor快速安装

在cmd中输入 pip install pytest-allure-adaptor,回车

二:报告生成

第1步:下载allure.zip,下载地址:allure-github: https://github.com/allure-framework/allure2 ,找到对应版本,并下载

第2步:解压allure.zip,将路径添加环境变量,path中,记得需要重启电脑

第3步:验证allure,在cmd中输入allure,然后回车,如果可以看到一下,说明配置完成

第4步:运行测试用例 pytest.main(["-m","login","-s","-q","--alluredir","./report"])

"-m": 标记用例

"login": 被标记需要执行用例

"-s":允许终端在测试运行时输出某些结果,例如你想输入print的内容,可以加上-s

"-q"简化输出结果

"--alluredir": 生成allure指定语法

"./report":生成报告的路径

"--clean-alluredir" :因为这个插件库allure-pytest生成的报告文件,你第二次运行时候不会清理掉里面的东西,所以你需要删除这个report文件夹,然后运行重新新建reoprt文件夹

说明:运行后,会在report文件夹里面生成文件

三.allure定制化报告

第1步:一些词语解释

一、feature: 标注主要功能模块。
二、story: 标注Features功能模块下的分支功能。
三、severity: 标注测试用例的重要级别。

1)blocker级别:中断缺陷(客户端程序无响应,无法执行下一步操作)
2)critical级别:临界缺陷(功能点缺失)
3)normal级别:正常    默认为这个级别
4)minor级别:次要缺陷(界面错误与UI需求不符)
5)trivial级别:轻微缺陷(必输项无提示,或者提示不规范)

四、step: 标注测试用例的重要步骤。

五、attach:用于向测试报告中输入一些附加的信息,通常是一些测试数据信息。

1)name就是附件名称,contents就是附件,type就是传类型

2)附件支持的类型(TEXT,HTML,XML,PNG,JPG,JSON,OTHER)

六、issue:这里传的是一个连接,记录的是你的问题。

七、testcase:这里传的是一个连接,记录的是你的用例。

八、environment:标记用例运行的环境。

九、description:描述用例信息

注意:因为是使用这个插件pytest-allure-adaptor,所以需要@allure.MASTER_HELPER.方法(其中MASTER_HELPER是AllureHelper()的实例化对象,需要@allure.MASTER_HELPER再调用里面的方法)

第2步:代码展+报表展示

feature方法的演示

代码:

报表展示:

story方法的演示

代码:

报表展示:

severity方法的演示:

代码:

报表展示:

setp方法的演示:

1.总的步骤备注

代码:

报告展示:

2.分步骤备注

代码:

报表展示:

attach方法的演示:

代码:

报表展示:

图片附件形式:

代码:

报表展示:

issue和testcase方法的演示:

代码:

报表展示:

environment 方法的演示:

代码:(里面传的参数可以自己定义)

报告演示:

description方法的演示:

代码:(这两种备注方式不能同时是存在,如果同时存在他会先使用description的,而不取3引号的)

报告演示:

第3步:运行可能存在的问题

添加@allure.MASTER_HELPER.story()等标记后运行报错:MarkInfo objects are deprecated as they contain merged marks which are hard to deal with correctly.

解决方法:

第一种:可以修改源码 from allure import utils 找到这个方法下面的label_os方法,修改下面的代码为红色圈住的地方。

2.第二种:可以直接在运行时候,添加"-p","no:warnings",这样就不会出现错误。pytest.main(["-p","no:warnings","--alluredir=./report","-v"]) 或者终端运行 pytest  -p no:warnings -s --alluredir=./report

四.报告显示

报告显示方法一:

第1步:以上运行之后,可以在CMD中运行命令

allure generate report -o html

report是alluredir生成的xml目录,html是最终生成html的目录

第2步:运行命令后,可以在html路径下看到生成的数据,其中index.html就是我们要的allure报告,你可以在pycharm里面打开,报告展示如下

报告显示方法二(这种相当于是调试):

第1步:以上运行之后,可以在CMD中运行命令

allure serve report   (report是alluredir生成的xml目录)

运行后,浏览器会自动跳转到allure report界面

四.pytest+allure+jenkins集成

参考我另外的一个博客文章:https://www.cnblogs.com/hao2018/p/11135180.html

注意:在本地运行的时候需要手动把代码拷贝到jenkins目录下面的workspace文件夹里面;如果在git或svn上运行,jekins会直接把代码拷贝到workspace目录 ,如果jenkins是指定工作目录就不用管了

pytest+allure(pytest-allure-adaptor基于这个插件)设计定制化报告的更多相关文章

  1. pytest+allure(allure-pytest基于这个插件)设计定制化报告

    一:环境准备 1.python3.6 2.windows环境 3.pycharm 4.allure-pytest 5.allure2.8.0 6.java1.8 allure-pytest快速安装 在 ...

  2. 网易云基于 Kubernetes 的深度定制化实践

    本文由  网易云发布. 2017 年,Kubernetes 超越 Mesos 和 Docker Swarm成为最受欢迎的容器编排技术.网易云从 2015 下半年开始向 Kubernetes 社区贡献代 ...

  3. Maven 教程(20)— 使用maven-assembly-plugin插件来定制化打包

    原文地址:https://blog.csdn.net/liupeifeng3514/article/details/79777976 简单的说,maven-assembly-plugin 就是用来帮助 ...

  4. solr特点三: 基于Solr实现排序定制化参考

    排序实现有N种形式,最低成本.最快响应时间是目标 一份索引,支持N种排序策略并且在线互不干扰是要考虑的每一种实现,处理的场景是不同的,不要千篇一律 020排序,从索引到效果,有不少坑,这篇文章没有细说 ...

  5. ERP_基于Oracle ADF的定制化企业级IT系统解决方案

    2014-12-31 Created By BaoXinjian

  6. Yoshino: 一个基于React的可定制化的PC组件库

    Github: https://github.com/Yoshino-UI... Docs: https://yoshino-ui.github.io/#/ Cli-Tool: https://git ...

  7. pytest+jenkins安装+allure导出报告

    环境安装: windows7+64位 pytest:4.0.2 allure的安装:allure的python库pytest-allure-adaptor jenkins的安装:2.138.2 JDK ...

  8. Allure+pytest 生成测试报告

    简介: python 主流自动化测试报告插件有三个:HTMLTestRunner.BeautifulReport 和 Allure.HTMLTestRunner是一个比较古老的报告模板,界面也不是很好 ...

  9. Pytest单元测试框架-allure测试报告

    Allure Test Report 对于不同的编程语言,有很多很酷的测试框架.不幸的是,它们中只有少数能够提供测试执行输出的良好表示.Qameta软件测试团队正在致力于Allure--一个开源框架, ...

随机推荐

  1. 学习笔记(23)- plato-准备中文语料

    以plato使用的metalwoz数据集的INSURANCE为例,进行语料的汉化过程. 1. 下载数据集 微软的数据集,下载地址:https://www.microsoft.com/en-us/res ...

  2. windows centos php-beast 安装

    https://github.com/imaben/php-beast-binaries windows下 可以直接在这里下载dll 根据自己的php版本  还有是不是线程安全的 来选择下载对应的 放 ...

  3. 基于SILVACO ATLAS的a-IGZO薄膜晶体管二维器件仿真(08)

    进展比较慢啊... 根据江南大学硕士论文IGZO/IZO双有源层薄膜晶体管特性的模拟研究: 其中, gCBa:类受主导带尾态 gVBd:类施主价带尾态 gGd:类施主氧空位态 NDeep:价带尾深施主 ...

  4. github 创建gitlab每次提交都要输入账号

    在使用git提交代码到github的时候,经常要求输入用户名和密码,类似这种: 除了在 github 上添加 SSH key 网上有这么一种解决方法:使用git提交到github,每次都要输入用户名和 ...

  5. Python实现mysql数据库增删改查

    利用python操作mysql数据库用法简单,环境配置容易,本文将实现对库增.删.改.查的简易封装!   1. 环境配置 安装第三方包  ,导入模块 mysql.connector  pip inst ...

  6. jquery--获取input radio单选框的值

    html <input type="radio" name="sex" value="man" checked> man < ...

  7. 【代码学习】PYTHON 函数

    一.定义函数 def 函数名(): 代码 二.函数调用 #定义函数 def printme(str): print str return #调用函数 printme("SQYY1" ...

  8. Cat4500升级注意事项

    第一部分:升级ROMMON 可以通过release note去查看什么Supervisor建议什么样的版本.例如:ROMMON Release Notes for the WS-X45-SUP7-E, ...

  9. WLC Crash采集什么信息?

    WLC和思科的路由器交换机不同,Cisco的WLC采用的是AireOS. 如果WLC crash或无故重启,可以尝试采集如下信息: AireOS WLC version 8.0.140.0 or hi ...

  10. JAVA 开学测试

    package StudentScore; public class ScoreInformation { String stunumber; //学号 String name; //姓名 doubl ...