2.2 allure

下载地址:https://github.com/allure-framework/allure2/releases

  1. 配置环境变量

解压下载的文件,添加到path环境变量中

  1. cmd执行allure --version

如果在开发工具terminal中执行提示command not found,需重启开发工具

  1. 安装allure-pytest

pip install allure-pytest
  1. 命令

pytest --alluredir=result  #把结果存在result目录,没有result目录会自动新建一个
allure generate allure result -o report --clean  # 生成reporter
allure open -h 127.0.0.1 -p 8883 ./report/  # 以本地服务的方式,打开reporter
  1. allure文档地址

https://docs.qameta.io/allure-report/#_pytest

@allure.epic()            # 项目描述,敏捷里面的概念,定义史诗,往下是feature
@allure.feature()         # 模块名称,功能点的描述,往下是story
@allure.tag()             # 用例标记,自定义内容
@allure.story()           # 用户故事,用户故事(需求点),往下是title
@allure.title()           # 用例标题,重命名html报告名称
@allure.testcase()        # 用例链接,对应功能测试用例系统里面的case
@allure.issue()           # 缺陷连接,对应缺陷管理系统里面的链接
@allure.description()     # 用例描述,测试用例的描述
@allure.step()            # 操作步骤,(于将一个测试用例,分成几个步骤在报告中输出)
@allure.severity()         # 用例等级,blocker,critical,normal,minor,trivial
@allure.link()            # 定义链接,定义一个链接,在测试报告展现
@allure.attach()          # 添加附件,通常是一些测试数据信息
@allure.attach.file()       # 添加附件,通常是一些测试数据信息
动态添加
示例
allure.dynamic.description()

<think>好的,我需要回答用户关于在白盒测试中使用Allure报告生成语法的问题。首先,我需要回忆Allure的基本用法以及如何在白盒测试中集成。用户提到的是白盒测试,这可能涉及到单元测试或集成测试,通常使用像Pytest这样的框架。 首先,我应该解释Allure与白盒测试的结合点,比如在代码中插入注解或装饰器来生成报告。需要涵盖常用的注解,比如@allure.feature、@allure.story、@allure.step、@allure.title等。每个注解的作用和示例代码是必要的,这样用户能清楚如何应用。 接下来,可能需要提到如何添加附件,比如截图或日志,这在调试时特别有用。例如,allure.attach方法的使用方法,以及何时使用这些功能。 然后,断言失败时的异常处理也很重要,比如allure.attach记录错误信息,帮助定位问题。需要提供一个例子说明如何在测试失败时捕获异常并附加信息到报告中。 此外,生成报告的步骤,比如运行测试后使用allure serve命令来查看报告,这也是用户需要知道的关键操作。 还要确保回答结构清晰,分点说明,每个部分都有代码示例。同时,需要引用用户提供的引用内容,特别是引用[2]和[3]中提到的Allure的作用和多技术融合的测试方法,以增强回答的可信度。 最后,生成相关问题,引导用户进一步探索,比如Allure与持续集成的整合、最佳实践、与Pytest的深度集成等。这些问题应该与用户的问题相关,并帮助他们扩展知识。 需要检查LaTeX格式是否符合要求,但用户的问题中没有数学表达式,所以可能不需要使用。但如果有任何需要格式化的部分,确保使用正确的$...$或$$...$$格式。 确保语言口语化,避免使用专业术语过多,必要时进行解释。同时,保持回答真实可靠,引用正确来源,并自然地将引用标识放在相关位置。</think>在白盒测试中,Allure 报告的语法主要通过代码注解和装饰器实现,结合测试框架(如 Pytest)生成可视化报告。以下是具体语法说明和操作步骤: --- ### 1. **基础注解语法** #### 1.1 定义测试特性与场景 - **@allure.feature**:标记测试类或模块的功能模块 ```python @allure.feature("用户管理模块") def test_user_login(): pass ``` - **@allure.story**:描述具体的测试场景 ```python @allure.story("用户登录功能验证") def test_login_with_valid_credentials(): pass ``` #### 1.2 步骤分解与描述 - **@allure.step**:细化测试步骤,支持动态参数 ```python def input_username(username): with allure.step(f"输入用户名: {username}"): # 操作代码 def test_login(): input_username("admin") input_password("123456") ``` - **@allure.title**:自定义测试用例标题 ```python @allure.title("验证密码错误时的登录行为") def test_login_with_wrong_password(): # 断言逻辑 ``` --- ### 2. **增强报告可读性** #### 2.1 添加附件与日志 - **allure.attach**:插入文本、图片或文件 ```python def test_error_handling(): try: # 可能出错的代码 except Exception as e: allure.attach(str(e), name="错误日志", attachment_type=allure.attachment_type.TEXT) ``` - **附件类型支持**:`TEXT`, `HTML`, `PNG`, `JSON` 等[^2] #### 2.2 标记优先级与严重性 - **@allure.severity**:定义缺陷等级 ```python @allure.severity(allure.severity_level.CRITICAL) def test_critical_function(): pass ``` --- ### 3. **与测试框架集成** #### 3.1 Pytest + Allure 配置 1. **安装依赖**: ```bash pip install pytest allure-pytest ``` 2. **运行测试并生成报告**: ```bash pytest --alluredir=./allure_results allure serve ./allure_results ``` #### 3.2 示例完整代码 ```python import allure import pytest @allure.feature("订单模块") class TestOrder: @allure.story("创建订单") @allure.title("测试正常创建订单流程") def test_create_order(self): with allure.step("步骤1: 选择商品"): # 模拟操作 assert True with allure.step("步骤2: 提交订单"): allure.attach("订单详情JSON", '{"total": 100}', allure.attachment_type.JSON) assert True ``` --- ### 4. **报告效果与优势** - **交互式视图**:支持按特性、故事、优先级过滤用例 - **时序图展示**:自动记录测试步骤执行顺序 - **环境信息整合**:可添加系统环境参数(如Python版本、操作系统)[^2] ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值