需要生成多条测试用例 需要装饰器@pytest.mark.parametrize 测试方法将会根据参数组合多次运行
# py 文件必须test开头 # 测试类必须Test开头 import ast import pytest from utils.handle_yaml import get_yaml from utils.handle_xls_my import get_excel_data import json from common.baseApi import BaseAPI # 在基类有 request_send 方法 from utils.handle_md5 import get_md5 from libs.login import Login @pytest.mark.parametrize("item", get_excel_data()) # 第一步 预期结果 实际结果 以多个参数形式传递 def test_login(item): # 方法需要加() # 第二步 实际结果和 预期结果做比较 ex_res_data = ast.literal_eval(item[0]) ex_res_msg = ex_res_data["msg"] # 获得每个预期返回结果 real_res_data = ast.literal_eval(item[0]) real_msg = real_res_data["msg"] # 获得每个预期返回结果 print(f'预期结果msg:{ex_res_msg}, 实际结果msg:{real_msg}') # 第四步 实际结果和 预期结果做比较 assert (ex_res_msg == real_msg) # -------------------------------------------