allure用法(一)-配置信息及基本用法
allure是一个轻量级的,灵活的,支持多语言的测试报告工具
优点:
- 可以为dev/qa 提供 详尽的测试报告、测试步骤、日志
- 可以为管理层提供更好的统计报告
- Java语言开发的
- 可以集成到jenkins
配置信息(显示在测试报告中):
1.environment.properties或environment.xml 自己在allure-results目录下创建,存放环境信息
2.categories.json 测试结果的分类,默认有两类缺陷,Product defects和 Test defects,同样放在allure-results目录下
[
{
"name": "Ignored tests",
"matchedStatuses": ["skipped"]
},
{
"name": "Infrastructure problems",
"matchedStatuses": ["broken", "failed"],
"messageRegex": ".*bye-bye.*"
},
{
"name": "Outdated tests",
"matchedStatuses": ["broken"],
"traceRegex": ".*FileNotFoundException.*"
},
{
"name": "Product defects",
"matchedStatuses": ["failed"]
},
{
"name": "Test defects",
"matchedStatuses": ["broken"]
}
]
参数解释:
name:分类名称
matchedStatuses:测试用例的运行状态,默认["failed", "broken", "passed", "skipped", "unknown"]
messageRegex:测试用例运行的错误信息,默认是 .* 正则匹配
traceRegex:测试用例运行的错误堆栈信息,默认是 .* 正则匹配
配置信息在报告中的显示(注意生成报告的目录也要在allure-results目录下,才可以看到environment信息,否则会显示为空)
执行:
- 安装allure-pytest插件
pip install allure-pytest
- 运行
先测试执行期间收集结果
--alluredir 用于指定存储运行结果的路径
pytest [测试文件] -s -q --alluredir=./result/
查看测试报告
allure serve ./result/
allure常用特性
在报告中查看测试功能,子功能或场景,测试步骤,测试附加信息
@feature @story @step @attach
使用
- import allure
- 功能上加@allure.feature('功能名称')
- 子功能上加@allure.story('子功能名称')
- 步骤上加@allure.step('步骤细节')
- @allure.attach('具体文本信息'),需要附加的信息,可以是数据、文本、图片、视频、网页
- feature相当于一个大功能,一个模块,将case分到某个feature中,story对应这个功能或模块下的不同场景,分支功能,feature和story类似父子关系
只测试某一功能时可以增加限制过滤
pytest 文件名 --allure-features '功能模块' --allure-stories '子功能模块'
allure-step
测试过程中每一个步骤,一般放在具体逻辑方法中,可以放在关键步骤
用法:
@allure.step() 只能以装饰器的方式放在类或方法上面
with allure.step():可以放在测试方法里,测试步骤的代码需要被该语句包含
例如:
import pytest
import allure @allure.feature("测试allure功能")
class Test_param: @allure.story("测试子模块功能")
# @myskip
def test_param(self,a=1,b=2):
with allure.step("测试a+b的值"):
assert a+b == 3
print(a+b)
运行结果:
allure-link
@allure.link(“链接地址”,name="") name是为链接地址指定一个名称
@allure.link("http://www.baidu.com",name="百度一下")
def test_link(self):
print("测试链接")
pass
运行结果:
allure用法(一)-配置信息及基本用法的更多相关文章
- spring读取数据库的配置信息(url、username、password)时的<bean>PropertyPlaceholderConfigurer的用法
用法1: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://w ...
- springcloud(五):Spring Cloud 配置中心的基本用法
Spring Cloud 配置中心的基本用法 1. 概述 本文介绍了Spring Cloud的配置中心,介绍配置中心的如何配置服务端及配置参数,也介绍客户端如何和配置中心交互和配置参数说明. 配置中心 ...
- 使用Apache Commons Configuration读取配置信息
在项目中使用一些比较新的库总会给你带来很多快乐,在这篇文章中,我将会给你介绍一个在Java中读取配置文件的框架——Apache Commons Configuration framework. 你会了 ...
- SEO配置信息操作文档
一.title(网站标题) title,就是浏览器上显示的那些内容,不仅用户能看到,也能被搜索引擎检索到(搜索引擎在抓取网页时,最先读取的就是网页标题,所以title是否正确设置极其重要.)title ...
- 深入理解MyBatis框架的的配置信息
面对一个框架,最重要的不是说回用其代码就可以了,我们需要了解其思想,这样才能更快更好的掌握这个框架.而对于一个框架,最重要的就是其配置文件的作用及功能了.下面,我就来谈一谈我今天遇到的这个MyBati ...
- Mybatis配置信息浅析 MyBatis简介(二)
官方文档入门篇中有明确说明 每个基于 MyBatis 的应用都是以一个 SqlSessionFactory 的实例为中心的. SqlSessionFactory 的实例可以通过 SqlSessionF ...
- jenkins 备份配置信息
本文介绍几种备份jenkin配置信息的方法,大家可根据实际情况做出选择. 我的测试环境如下: windows 7 jenkins 2.32.3 ____升级到___2.46.3 (长期支持版本) 多种 ...
- [转帖]IIS内虚拟站点配置信息说明
web.config配置详细说明 https://www.cnblogs.com/zhangxiaolei521/p/5600607.html 原作者总结的很详细 但是没有完全的看完 自己对IIS 的 ...
- vuejs目录结构启动项目安装nodejs命令,api配置信息思维导图版
vuejs目录结构启动项目安装nodejs命令,api配置信息思维导图版 vuejs技术交流QQ群:458915921 有兴趣的可以加入 vuejs 目录结构 build build.js check ...
随机推荐
- ArcMap操作随记(8)
1.构建两点之间连线 [构造视线] 2.编辑相邻多边形(边界等) [拓扑]工具条→[共享要素] 3.点要素空间分配 [创建泰森多边形]→[裁剪] 4.面要素空间分配 [要素转折点]→[创建泰森多边形] ...
- Linux企业常用命令详解
cat :查看 cat [-AbeEnstTuv] [--help] [--version] fileName 常用参数: -n :由 1 开始对所有输出的行数编号 -b :和 -n 相似,对于空白行 ...
- 与Flash 中国特供版斗智斗勇
我的Windows 有OEM和学校KMS 的正版,Office 365 年年续费,QQ音乐腾讯视频哔哩哔哩月月开会员,软件游戏都从Play 商店和Steam 上购买.但是Adobe 这个垃圾合作,终于 ...
- c++-投骰子
#include<iostream>#include<cstdlib>//产生随机数的函数using namespace std;enum GameStatus{WIN,LOS ...
- springcloud学习04- 断路器Spring Cloud Netflix Hystrix
依赖上个博客:https://www.cnblogs.com/wang-liang-blogs/p/12072423.html 1.断路器存在的原因 引用博客 https://blog.csdn.ne ...
- Python GUI tkinter 学习笔记(一)
第一个python程序 #!/usr/bin/python # -*- coding: UTF-8 -*- from Tkinter import * # 创建一个根窗口,其余的控件都在这个窗口之上 ...
- python练习册 每天一个小程序 第0006题
1 # -*-coding:utf-8-*- 2 __author__ = 'Deen' 3 ''' 4 题目描述: 5 你有一个目录,放了你一个月的日记,都是 txt,为了避免分词的问题,假设内容都 ...
- 绕过CDN找到⽬标站点真实IP
一.判断目标网站是否使用CDN 在渗透测试中,如果连真实 IP 都没有找到的话,相当于连门都没有找到.所以,如何验证目标网站是否使用了 CDN 呢? 1.多地 ping 法(一般情况下使用多地 pin ...
- Knife4j添加lombok及注解初探
一.POM添加 在pom文件里添加包 1 <!-- 添加Lombok插件--> 2 <dependency> 3 <groupId>org.projectlombo ...
- 浅析Java反射--Java
前言 上篇文章我们提到了可以使用反射机制破解单例模式.这篇文章我们就来谈一谈什么是反射,反射有什么用,怎么用,怎么实现反射. 概述 Java的反射(reflection)机制:是指在程序的运行状态中, ...