文章目录
前言
- 使用参数化,allure报告默认的用例标题为用例名称,这样可读性较差
- 参数化使用ids,也并不能完全解决问题(还是会保留用例名称)
- 使用allure.title()装饰器写死标题的方式,用例维护成本较高
- 所以希望能把parametrize参数化数据驱动结合title使用,下面会以登录用例为例来详细介绍
参数化默认的标题
代码
data_login = [
{
"username": "name1", "pwd": "pwd1"},
{
"username": "name2", "pwd": "pwd2"},
{
"username": "name3", "pwd": "pwd3"}
]
@pytest.fixture()
def login(request):
"""登录fixture"""
param = request.param
print(f"账号是:{param['username']},密码是:{param['pwd']}")
# 返回
return {
"code": 0, "msg": "success!"}
# 参数化默认的标题
@pytest.mark.parametrize("login", data_login, indirect=True)
def test_parametrize_without_title(login):
assert login['code'] == 0
测试报告
用例标题为方法名+参数化数据,可读性较差
参数化使用id
代码
data_log