Pytest系列

前言

本文不会讲解allure的安装,需要安装的话请自行百度查看教程

  • @allure.feature()用于描述被测试产品需求
  • @allure.story() 用于描述feature的用户场景,即测试需求
  • @allure.title() 用于描述用例名称
  • @allure.step() 用于描述用例步骤
  • @allure.description() 用于描述用例,支持html显示
  • allure.attach() 用于添加附件
  • @allure.severity() 用于描述用例级别
    - blocker  阻塞缺陷(功能未实现,无法下一步)
    - critical  严重缺陷(功能点缺失)
    - normal   一般缺陷(边界情况,格式错误)
    - minor  次要缺陷(界面错误与ui需求不符)
    - trivial   轻微缺陷(必须项无提示,或者提示不规范)

代码实现

装饰器形式标记用例

import pytest
import allure


@allure.step('1、登录')
def login():
    pass


@allure.epic()
@allure.severity('critical')
@allure.feature('用于描述被测试产品需求')
@allure.story('用于描述feature的用户场景,即测试需求')
@allure.title('用于描述用例名称')
def test_01():
    login()
    
    # 可以在用例内部编写用例步骤,等同于@allure.step()
    # 步骤必须写在方法内部,注意格式
    with allure.step('1、登录'):

        # allure.attach可以向报告中添加附件
        with open('1.jpg', 'rb') as f:
            img = f.read()
        allure.attach(img, '这是用例图片附件')
    
    pass

在用例内部实现

import pytest
import allure


def test02():
    allure.dynamic.severity('critical')
    allure.dynamic.feature('用于描述被测试产品需求')
    allure.dynamic.story('用于描述feature的用户场景,即测试需求')
    allure.dynamic.title('用于描述用例名称')
    allure.dynamic.description('这是用例描述')

    pass
原文地址:https://www.cnblogs.com/se7enjean/p/13513599.html