好的,我给你整理一份 Allure 报告的内容介绍和用法指南,涵盖概念、安装、集成、使用示例和总结。
一、Allure 简介
Allure 是一个轻量级、可视化的测试报告框架,适用于多种测试框架(如 JUnit、TestNG、Pytest、Cucumber 等)。
特点
- 可视化:提供直观的 HTML 报告,包括测试概览、统计信息、失败用例详情等。
- 跨语言支持:Java、Python、JavaScript 等多种语言均可使用。
- 丰富的功能:
- 测试用例分类(Feature、Story)
- 步骤记录和附件(截图、日志)
- 测试用例状态统计(通过/失败/跳过)
- 支持多维度筛选和搜索
二、Allure 安装
1. 安装 Allure 命令行工具
macOS
brew install allure
Ubuntu / Linux
sudo apt-add-repository ppa:qameta/allure
sudo apt-get update
sudo apt-get install allure
Windows
- 下载 Allure Windows 安装包
- 配置系统环境变量
ALLURE_HOME
并将bin
目录加入 PATH
2. 验证安装
allure --version
三、Allure 使用方法
1. Java 项目中集成 Allure
Maven 项目
在 pom.xml
中添加依赖:
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-java-commons</artifactId>
<version>2.21.0</version>
</dependency>
TestNG 集成
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-testng</artifactId>
<version>2.21.0</version>
</dependency>
2. Pytest 集成 Allure(Python)
pip install allure-pytest
执行测试并生成 Allure 数据:
pytest --alluredir=allure-results
生成报告:
allure serve allure-results
3. Allure 报告目录结构
执行测试后,会生成 allure-results
文件夹,主要内容:
文件/目录 | 说明 |
---|---|
*.json | 测试用例结果 |
*.png / *.jpg | 附件,如截图 |
widgets | 各类统计数据的 JSON 文件 |
categories.json | 自定义用例分类 |
然后通过 Allure CLI 生成 HTML 报告:
allure generate allure-results -o allure-report
allure open allure-report
4. Allure 常用注解 / 装饰器
Java TestNG 示例
import io.qameta.allure.*;
@Epic("用户模块")
@Feature("登录功能")
public class LoginTest {
@Test
@Story("正确账号密码登录")
@Description("测试用户使用正确账号和密码可以成功登录")
@Severity(SeverityLevel.BLOCKER)
public void loginSuccess() {
// 测试代码
Allure.addAttachment("登录截图", new FileInputStream("screenshot.png"));
assert true;
}
}
Python Pytest 示例
import allure
@allure.epic("用户模块")
@allure.feature("登录功能")
@allure.story("正确账号密码登录")
@allure.severity(allure.severity_level.BLOCKER)
def test_login_success():
with allure.step("打开登录页面"):
pass
with allure.step("输入用户名和密码"):
pass
with allure.step("点击登录按钮"):
pass
allure.attach("登录截图", open("screenshot.png", "rb").read(), allure.attachment_type.PNG)
5. Allure 报告内容说明
- Overview(概览):
- 测试用例总数、通过/失败/跳过统计
- 测试执行趋势图
- Suites(套件):
- 按测试套件分类查看用例
- Cases(用例):
- 查看每条用例详细执行步骤、截图、附件、执行日志
- Graphs(图表):
- 测试趋势、用例分布、失败率统计
- Behaviors(行为):
- 按
Epic
、Feature
、Story
分类展示测试用例
- 按
- Timeline(时间线):
- 可视化测试执行顺序和耗时
四、Allure 使用总结
优点
- 可视化效果好,支持 HTML 报告和图表展示。
- 支持多语言、多测试框架。
- 支持测试步骤记录和附件上传(如截图)。
- 支持多维度分类(Epic / Feature / Story)。
注意事项
- 生成报告前必须有
allure-results
数据文件夹。 - Allure CLI 工具需要安装在系统环境中,或者在 CI/CD 管道中使用 Docker 镜像。
- 使用注解或装饰器规范化测试用例,有助于报告结构清晰。
- 不直接支持视频、动态交互,需要借助附件上传实现。
发表回复