当我们使用allure生成测试报告之后,我们再修改测试用例,然后再次运行生成测试报告会发现测试报告中保留了上一次用例的运行记录。如果我们不想看到原来的用例执行记录,而是生成新的测试报告,我们可以在用例执行的时候在命令行中通过指定--clean-alluredir参数来做到每次都生成新的测试报告。
allure会保留历史执行记录:
当我们多次执行测试用例的时候,我们会发现allure的测试报告当中保留了我们每次执行的记录,通过这种方式我们可以清晰的看到用例每次的运行情况。但是同样也带来了一个问题,那就是我们每次修改用例或者新增了用例,或者说只想执行某个用例,生成报告之后我们仍然会看到之前的用例报告,而不是当前最新的报告。
指定--clean-alluredir参数清空上一次执行记录:
如果我们想每次执行用例的时候都生成新的测试报告,那么我们可以在命令中加上--clean-alluredir参数。
我们先来看一下跟报告相关的三个参数,命令行中使用pytest -h查看:
- --alluredir=DIR:指定测试报告的生成路径;
- --clean-alluredir:如果已经存在报告,那就先清空,然后再生成新的测试报告;
- --allure-no-capture:不添加pytest捕捉的logging/stdout/stderr到测试报告中;
我们加上--clean-alluredir参数重新执行下测试用例:
> pytest --alluredir=./report/result_data --clean-alluredir > allure serve ./report/result_data
查看测试报告: