在 pytest 中,您可以使用@pytest.mark.parametrize 装饰器来定义测试用例的参数化,并使用 request.node 对象来获取参数值并将其设置到 Allure 的上下文中。然后,在测试用例执行结束时,Allure 会将参数信息写入 JSON 文件中。
例如:
import pytest
import allure
@user2ize("param", [1, 2, 3])
def test_example(request, param):
allure.dynamic.title(f"Test Example - Param {param}")
allure.dynamic.description("This is an example test case with parameters")
allure.dynamic.parameter("param", param)
# 执行测试逻辑...
使用@pytest.mark.parametrize 装饰器定义了参数化,将参数值传递给 test_example 函数。然后,在测试函数中,使用 allure.dynamic.parameter 方法将参数值设置到 Allure 的上下文中