pytest在1个接口内用循环执行多条用例时,如何在报告中体现每条用例的结果?
通过读取csv文件中的多行数据,接口以for循环的方式执行多条用例。@allure.feature('登录测试')
@pytest.mark.parametrize('caseinfo', YamlUtil().read_test_yamlfile('test_login.yaml'))
@pytest.mark.parametrize('baseinfo', YamlUtil().read_yamlfile('config.yaml'))
def test_login(self,baseinfo, caseinfo):
data_list = DataUtil().csv_read(caseinfo["parameters"]["name-login-assert_str"])
#读取csv文件内的多条测试用例数据,循环执行
for data in data_list:
for k in caseinfo["requests"]["data"].keys():
for j in data.keys():
if k == j:
caseinfo["requests"]["data"] = data
for l in caseinfo["validate"].keys():
for m in data.keys():
if l == m:
assert_str = data
method = caseinfo["requests"]["method"]
last_url = baseinfo["base"]["base_url"] + caseinfo["requests"]["url"]
rep = RequestUtil().send_request(method, last_url, caseinfo["requests"]["data"])
allure.dynamic.story(data["story"])
#软断言用例执行结果
pytest.assume(assert_str in rep)问题:测试报告中只能体现接口的执行结果,无法体现多条测试用例的执行结果
预期在测试报告中能体现多条用例的执行结果。
allure 会自动显示每次的结果 可以用框架管理用例 每条都记录?
页:
[1]