Pytest学习二十一- allure之@allure.description()、@allure.title()的使用

一、@allure.description()的使用

作用

可以添加足够详细的测试用例描述

语法格式,有三种

1、@allure.description(str)

2、在测试用例函数声明下方添加 """ """

3、@allure.description_html(str):相当于传一个HTML代码组成的字符串,类似 allure.attach() 中传HTML

示例代码如下:

# -*- coding: utf-8 -*-
# @Time    : 2020/12/12 11:15
# @Author  : longrong.lang
# @FileName: test_alluredescription.py
# @Software: PyCharm
# @Cnblogs :https://www.cnblogs.com/longronglang

import allure


# @allure.description(str)
@allure.description("验证1=1")
def test_description1():
    assert 1 == 1


# 在测试用例函数声明下方添加 """ """
def test_description2():
    """
    验证1=1
    """
    assert 1 == 1


# @allure.description_html(str)
@allure.description_html("""
<h1>这是一段html描述</h1>
<img src="https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=1993234373,1554417853&fm=26&gp=0.jpg">
""")
def test_description3():
    assert 'h' in 'html'

@allure.description(str)形式在allure中测试报告显示

在测试用例函数声明下方添加 """ """,形式在allure中测试报告显示

不难看出,前两种方式的效果和作用是一致的。

@allure.description_html(str),形式在allure中测试报告显示

二、@allure.title()

作用

  • 使得测试用例的标题更具有可读性
  • 支持占位符传递关键字参数,(动态标题,结合 @pytest.mark.parametrize 使用)

示例代码如下:

# -*- coding: utf-8 -*-
# @Time    : 2020/12/12 14:24
# @Author  : longrong.lang
# @FileName: test_allureTitle.py
# @Software: PyCharm
# @Cnblogs :https://www.cnblogs.com/longronglang
import allure,pytest


@allure.title("前置操作:获取用户名")
@pytest.fixture()
def users(request):
    user = request.param
    print(f" 用户名:{user}")
    return user


@allure.title("前置操作:获取密码")
@pytest.fixture()
def pwds(request):
    pwd = request.param
    print(f" 密码:{pwd}")
    return pwd


data1 = ["lilei","hameimei","jojo"]
data2 = ["1","2","3"]


@allure.title("组合操作:获取用户名: {users}  密码: {pwds}")
@pytest.mark.parametrize("users",data1,indirect=True)
@pytest.mark.parametrize("pwds",data2,indirect=True)
def test_getuserinfo(users,pwds):
    print(f"用户名为:{users} 密码为:{pwds}")

测试报告中展示

注意:如果没有添加 @allure.title() 的话,测试用例的标题默认就是函数名

相关文章

目录1、前言2、mark的使用(一)注册自定义标记(二)在测试...
用例执行状态用例执行完成后,每条用例都有自己的状态,常见...
什么是conftest.py可以理解成一个专门存放fixture的配置文件...
前言pytest默认执行用例是根据项目下的文件名称按ascii码去收...
前言:什么是元数据?元数据是关于数据的描述,存储着关于数...