Allure 在 Python 中的安装与使用

2024-05-12 17:20
文章标签 python 安装 使用 allure

本文主要是介绍Allure 在 Python 中的安装与使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Allure 是一个灵活轻量级的测试报告工具,它能够生成详细且富有洞察力的测试报告。在 Python 中,Allure 通常与 Pytest 结合使用,以提供更加丰富的测试结果展示。下面我将介绍关于如何在 Python 中使用 Allure 的详细操作。

一、环境准备

在开始之前,确保你的环境中已经安装了 Python 和 Pytest。接下来,你需要安装 Allure 的命令行工具和 Python 库。

安装 Allure 命令行工具:

pip install allure-cmdline

安装 Allure Python 库:

pip install allure-pytest

二、编写测试用例

创建一个 Python 文件,比如 test_example.py,并编写以下代码:

import pytest
import allure# 定义一个测试函数,使用 allure 的 feature 来标记测试的特性
@allure.feature("加法运算测试")
class TestAddition:# 使用 allure 的 story 来标记具体的测试场景@allure.story("测试两个正数相加")def test_add_positive_numbers(self):# 一个简单的断言assert 3 + 4 == 7# 使用 pytest 的 parametrize 来实现参数化测试 @pytest.mark.parametrize("x,y,expected", [(1, 2, 3), (3, 4, 7)])@allure.story("测试加法的参数化场景")def test_add_with_parameters(self, x, y, expected):# 参数化测试的断言assert x + y == expected# 使用 allure 的 step 来记录测试步骤
@allure.step("执行加法操作")
def add_and_print_result(x, y):result = x + yprint(f"The result of {x} + {y} is {result}")return result# 测试用例中使用 allure step
def test_add_step(self):with allure.step("步骤1:输入两个参数"):x = 2y = 3result = add_and_print_result(x, y)with allure.step("步骤2:验证结果"):assert result == 5

三、运行测试用例

使用 Pytest 运行测试,并生成 Allure 报告:

pytest test_example.py --alluredir=allure-results

这条命令会执行 test_example.py 中的测试用例,并将 Allure 报告的生成结果存放在 allure-results 目录中。

四、生成 Allure 报告

在命令行中使用 Allure 命令行工具生成报告:

allure serve allure-results

执行该命令后,Allure 会启动一个本地服务器,并在默认的 Web 浏览器中打开生成的 Allure 报告。

五、Allure 报告的定制化

Allure 报告支持定制化,你可以通过添加不同的注解来丰富报告的内容。

自定义描述

使用 allure.description 来为测试用例添加描述:

@allure.description("""
这是一个复杂的测试用例,它执行多个步骤来验证登录流程。
""")
def test_complex_login(self):# ...

附件

你可以在测试用例中添加附件,比如截图或文本日志:

def test_with_attachment(self):with allure.step("生成报告并附加日志"):allure.attach("这是日志文件的内容", body="文本内容", attachment_type=allure.attachment_type.TEXT)

六、总结

Allure 是一个功能强大的测试报告工具,它能够提供清晰、易于理解的测试结果。通过上述步骤,你可以在 Python 中轻松地使用 Allure 来增强你的测试报告。

七、附录

  • Allure 官方文档:Allure GitHub
  • Pytest 插件:allure-pytest 安装和使用说明。

这篇关于Allure 在 Python 中的安装与使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/983250

相关文章

sky-take-out项目中Redis的使用示例详解

《sky-take-out项目中Redis的使用示例详解》SpringCache是Spring的缓存抽象层,通过注解简化缓存管理,支持Redis等提供者,适用于方法结果缓存、更新和删除操作,但无法实现... 目录Spring Cache主要特性核心注解1.@Cacheable2.@CachePut3.@Ca

C#下Newtonsoft.Json的具体使用

《C#下Newtonsoft.Json的具体使用》Newtonsoft.Json是一个非常流行的C#JSON序列化和反序列化库,它可以方便地将C#对象转换为JSON格式,或者将JSON数据解析为C#对... 目录安装 Newtonsoft.json基本用法1. 序列化 C# 对象为 JSON2. 反序列化

Python中Json和其他类型相互转换的实现示例

《Python中Json和其他类型相互转换的实现示例》本文介绍了在Python中使用json模块实现json数据与dict、object之间的高效转换,包括loads(),load(),dumps()... 项目中经常会用到json格式转为object对象、dict字典格式等。在此做个记录,方便后续用到该方

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

从基础到高级详解Python数值格式化输出的完全指南

《从基础到高级详解Python数值格式化输出的完全指南》在数据分析、金融计算和科学报告领域,数值格式化是提升可读性和专业性的关键技术,本文将深入解析Python中数值格式化输出的相关方法,感兴趣的小伙... 目录引言:数值格式化的核心价值一、基础格式化方法1.1 三种核心格式化方式对比1.2 基础格式化示例

Python与MySQL实现数据库实时同步的详细步骤

《Python与MySQL实现数据库实时同步的详细步骤》在日常开发中,数据同步是一项常见的需求,本篇文章将使用Python和MySQL来实现数据库实时同步,我们将围绕数据变更捕获、数据处理和数据写入这... 目录前言摘要概述:数据同步方案1. 基本思路2. mysql Binlog 简介实现步骤与代码示例1

Python ORM神器之SQLAlchemy基本使用完全指南

《PythonORM神器之SQLAlchemy基本使用完全指南》SQLAlchemy是Python主流ORM框架,通过对象化方式简化数据库操作,支持多数据库,提供引擎、会话、模型等核心组件,实现事务... 目录一、什么是SQLAlchemy?二、安装SQLAlchemy三、核心概念1. Engine(引擎)

Java Stream 并行流简介、使用与注意事项小结

《JavaStream并行流简介、使用与注意事项小结》Java8并行流基于StreamAPI,利用多核CPU提升计算密集型任务效率,但需注意线程安全、顺序不确定及线程池管理,可通过自定义线程池与C... 目录1. 并行流简介​特点:​2. 并行流的简单使用​示例:并行流的基本使用​3. 配合自定义线程池​示

Ubuntu如何升级Python版本

《Ubuntu如何升级Python版本》Ubuntu22.04Docker中,安装Python3.11后,使用update-alternatives设置为默认版本,最后用python3-V验证... 目China编程录问题描述前提环境解决方法总结问题描述Ubuntu22.04系统自带python3.10,想升级

Python自动化处理PDF文档的操作完整指南

《Python自动化处理PDF文档的操作完整指南》在办公自动化中,PDF文档处理是一项常见需求,本文将介绍如何使用Python实现PDF文档的自动化处理,感兴趣的小伙伴可以跟随小编一起学习一下... 目录使用pymupdf读写PDF文件基本概念安装pymupdf提取文本内容提取图像添加水印使用pdfplum