Allure简介

Allure是一个report框架,可以基于一些测试框架生成测试报告,比较常用的一般是Junit/Testng框架;
Allure 生成的报告样式简洁美观,同时又支持中文;
Allure还支持使用Jenkins工具持续集成,整套环境搭建下来以后,使用起来非常方便。

环境搭建

  1. 安装JDK1.8+

  2. 安装Allure

  • 下载Allure的zip安装包,戳这里
  • 解压到allure-commandline目录
  • 进入bin目录,运行allure.bat
  • 添加allure到环境变量PATH(\安装路径\allure-commandline\bin)
  1. 确认allure安装成功

在命令行输入:allure --version,能展示allure安装版本即可。

 
图片.png

Allure使用

1.代码中添加allure依赖

在pom.xml文件中添加allure的依赖,关键配置如下:

<properties>
<allure.version>1.5.4</allure.version>
<aspectj.version>1.8.10</aspectj.version>
</properties> <dependencies>
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-testng</artifactId>
<version>LAST_VERSION</version>
<scope>test</scope>
</dependency>
</dependencies> <build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20</version>
<configuration>
<argLine>
-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
</argLine>
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>

2.修改代码
Allure注解

 

Features:标注主要功能模块
Stories:标注Features功能模块下的分支功能
Title:标注Stories下测试用例名称
Step:标注测试用例的重要步骤
Severity:标注测试用例的重要级别
Description: 标注测试用例的描述
Issue和TestCaseId据说是可以集成bug管理系统的,没用过,所以不太清楚

Allure中对严重级别的定义:

1. Blocker级别——中断缺陷
客户端程序无响应,无法执行下一步操作。
2. Critical级别――临界缺陷,包括:
功能点缺失,客户端爆页。
3. Major级别——较严重缺陷,包括:
功能点没有满足需求。
4. Normal级别――普通缺陷,包括:
1. 数值计算错误
2. JavaScript错误。
5. Minor级别———次要缺陷,包括:
1. 界面错误与UI需求不符。
2. 打印内容、格式错误
3. 程序不健壮,操作未给出明确提示。
6. Trivial级别——轻微缺陷,包括:
1. 辅助说明描述不清楚
2. 显示格式不规范,数字,日期等格式。
3. 长时间操作未给用户进度提示
4. 提示窗口文字未采用行业术语
5. 可输入区域和只读区域没有明显的区分标志
6. 必输项无提示,或者提示不规范。
7. Enhancement级别——测试建议、其他(非缺陷)
1. 以客户角度的易用性测试建议。
2. 通过测试挖掘出来的潜在需求。

在代码中使用以上注解,可以生成更规范更漂亮的报告。形式如下:

 
测试代码
 
Allure报告
  • 注:每个方法前可以添加一个或多个标注。

3.执行用例

//全部运⾏
$ mvn clean test

运行某路径下以Test命名结尾的部分用例
$ mvn clean test -Dtest=com.test.app.*/Test.java

4.生成报告

//查看报告
allure serve target/allure-results

 

执行语句后,会打开默认浏览器,显示报告。报告支持中英文等几种语言。

 
图片.png

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

【转】使用AllureReport生成测试报告的更多相关文章

  1. Pytest测试框架(五):pytest + allure生成测试报告

    Allure 是一款轻量级.支持多语言的开源自动化测试报告生成框架,由Java语言开发,可以集成到 Jenkins. pytest 测试框架支持Allure 报告生成. pytest也可以生成juni ...

  2. python+selenium生成测试报告后自动发送邮件

    标签(空格分隔): 自动化测试 运行自动化脚本后,会产生测试报告,而将测试报告自动发送给相关人员,能够让对方及时的了解测试情况,查看测试结果. 整个脚本包括三个部分: 生成测试报告 获取最新的测试报告 ...

  3. pycharm运行脚本为何不生成测试报告?

    今日使用python+selenium编写自动化测试脚本并执行过程中,使用pycharm运行结果后发现脚本运行无报错,脚本中的操作也正常被执行,但就是没有生成测试报告. 为什么呢,为什么呢,生成测试报 ...

  4. Python单元测试框架之pytest -- 生成测试报告

    继续pytest单元测试框架的学习,pytest可以生成多种类型的测试报告.这一节就来学习pytest如何生成测试报告. 创建test_calss.py 测试用例文件,这里以测试该文件为例. #cod ...

  5. 调用test case集,并生成测试报告

    结构是 test_all.py 进行配置,执行所有测试用例集,并合并测试报告到同一个文件 #test_all.py 进行配置,执行所有测试用例集 # coding = utf-8 from time ...

  6. JMeter-自动生成测试报告

    很多朋友都在问jmeter如何生成测试报告,这里随便说两句. 环境要求 1:jmeter3.0版本之后开始支持动态生成测试报表 2:jdk版本1.7以上 3:需要jmx脚本文件 基本操作 1:在你的脚 ...

  7. Python+Selenium+Unittest+HTMLTestRunner生成测试报告+发送至邮箱,记一次完整的cnblog登录测试示例,

    测试思路:单个测试集.单个测试汇成多个测试集.运行测试集.生成测试报告.发送至邮箱. 第一步:建立单个测试集,以cnblog登录为例. 测试用例: cnblog的登录测试,简单分下面几种情况:(1)用 ...

  8. python之单元测试_生成测试报告

    (1)HTMLTestRunner.py的下载路径:https://pan.baidu.com/s/1Yk2E8d8bIo5_rmpussOE9Q 提取码:0jae (2)HTMLTestRunner ...

  9. JMeter:Dashboard Report自动生成测试报告的巧用和避坑

    官网地址查阅:http://jmeter.apache.org/usermanual/generating-dashboard.html 最近在压测过程中使用 Generating Report Da ...

随机推荐

  1. HBase集群环境搭建v2.0

    本文档环境基于ubuntu16.04版本,如果最终不使用SuperMap iServer 10i ,可以不配置geomesa-hbase_2.11-2.2.0-bin.tar.gz 相比1.0版本,升 ...

  2. Python学习日记(三十三) Mysql数据库篇 一

    背景 Mysql是一个关系型数据库,由瑞典Mysql AB开发,目前属于Oracle旗下的产品.Mysql是目前最流行的关系型数据库管理系统之一,在WEB方面,Mysql是最好的RDBMS(Relat ...

  3. Set,List,Map,Collection

    // JAVA集合主要分为三种类型: // // Set(集) List(列表) Map(映射) Collection 接口 // // Collection是最基本的集合接口,声明了适用于JAVA集 ...

  4. pandas之数据处理

    首先,数据加载 pandas提供了一些用于将表格型数据读取为DataFrame对象的函数,期中read_csv和read_table这两个使用最多. 1.删除重复元素 使用duplicated()函数 ...

  5. 对象输入输出流ObjectInputStream、ObjectOutputStream(对象的序列化与反序列化)

    如题 所有关联的类需要继承Serializable 接口 文件为空,直接反序列化为发生错误; 毕竟对象为null , 序列化到文件里不是空空的! 以下笔记的原文连接: https://www.cnbl ...

  6. 微信之获取微信的openid(二)详细版

    第一步 :配置测试号,网页授权获取用户基本信息. 该授权回掉页面域名为ngrok 映射的域名,我的映射地址是127.0.0.1:8080. 到此微信配置完毕,接下来就是直接上代码了 2.用户同意授权 ...

  7. 《逆袭团队》第九次团队作业【Beta】Scrum meeting 2

    项目 内容 软件工程 任课教师博客主页链接 作业链接地址 团队作业9:Beta冲刺与团队项目验收 团队名称 逆袭团队 具体目标 (1)掌握软件黑盒测试技术:(2)学会编制软件项目总结PPT.项目验收报 ...

  8. 启用Microsoft loopback Adapte

    开始▶控制面板▶系统   系统▶设备管理器   此时,点击操作的菜单是没有有用子菜单的,需要点击一下网络适配器.   再点击操作▶添加过时硬件   添加硬件向导▶下一步   安装我手动从列表选择的硬件 ...

  9. C++定义和初始化数组以及memset的使用(转)

    一.一维数组 静态 int array[100]; 定义了数组array,并未对数组进行初始化 静态 int array[100] = {1,2}: 定义并初始化了数组array 动态 int* ar ...

  10. java接口的成员变量的修饰符

    前言:c++学的java都忘记了不少 interface(接口)可将其想象为一个"纯"抽象类.它允许创建者规定一个类的基本形式:方法名.自变量列表以及返回类型,但不实现方法主体 接 ...