當我們使用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
查看測試報告: