笔记|pytest用例执行完成后自动生成allure测试报告

requset : 对于一个TestCase类,执行完成所有用例后,自动生成allure报告。对于单个用例,个人觉得直接在输出台查看结果即可。
step1:新建两个文件夹,result用来存放临时的json文件,report存放html报告
step2:pytest.ini命令行参数可以采用如下配置:

[pytest] addopts = -vs --alluredir ../result

step3:conftest中设置fixture,目的是当所有用例执行完成后生成allure报告,并清理result下面的json文件
@pytest.fixture(scope="class") def allure_report(request): def clear_result(): print("所有用例执行完毕") os.system("allure generate {} -o {} --clean".format(result_path, report_path)) print("allure报告已生成") # 当allure报告生成后,将result中的json文件清空 for i in os.listdir(result_path): file_data = https://www.it610.com/article/result_path +"\\" + i if os.path.isfile(file_data): os.remove(file_data) print("result下的json文件已清空") request.addfinalizer(clear_result)

【笔记|pytest用例执行完成后自动生成allure测试报告】Note:对于涉及到reruns的情况,可以注释掉清理json文件代码
step4:使用fixture:
@pytest.mark.usefixtures("allue_report") class TestCase():

step5:查看report下的html文件


    推荐阅读