通過使用裝飾器@allure.title可以為測試用例自定義一個更具有閱讀性的易讀的標題。
allure.title的三種使用方式:
- 直接使用@allure.title為測試用例自定義標題;
- @allure.title支持通過占位符的方式傳遞參數,可以實現測試用例標題參數化,動態生成測試用例標題;
- @allure.dynamic.title動態更新測試用例標題;
allure.title的例子:
# file_name: test_allure_title.py import pytest import allure @allure.title("自定義測試用例標題") def test_with_title(): assert True if __name__ == '__main__': pytest.main(['-s', 'test_allure_title.py'])
執行命令:
> pytest test_allure_title.py --alluredir=./report/result_data
> allure serve ./report/result_data
查看測試報告展示效果:

上面的測試報告中,我們已經通過裝飾器@allure.title自定義了測試用例的標題;
allure.title占位符傳遞參數,參數化測試用例標題:
# file_name: test_allure_title.py import pytest import allure @allure.title("參數化測試用例標題:參數1 = {param1} and 參數2 = {param2}") @pytest.mark.parametrize("param1, param2, expected", [ (1, 1, 2), (1, 3, 5) ]) def test_with_parametrize_title(param1, param2, expected): assert param1 + param2 == expected if __name__ == '__main__': pytest.main(['-s', 'test_allure_title.py'])
執行命令:
> pytest test_allure_title.py --alluredir=./report/result_data
> allure serve ./report/result_data
查看測試報告展示效果:

上面的測試報告中,我們已經實現了通過在裝飾器@allure.title中使用占位符的方式給標題傳遞參數,來實現測試用例標題的參數化,動態生成標題;
allure.dynamic.title動態更新標題:
# file_name: test_allure_title.py import pytest import allure @allure.title("這個標題將會被測試用例中的標題替換掉") def test_with_dynamic_title(): assert True allure.dynamic.title("斷言成功后,標題將會被替換成這個標題") if __name__ == '__main__': pytest.main(['-s', 'test_allure_title.py'])
執行命令:
> pytest test_allure_title.py --alluredir=./report/result_data
> allure serve ./report/result_data
查看測試報告展示效果:

從上面的測試報告中可以看到,測試用例的標題被替換成了在測試用例中使用allure.dynamic.title更新后的標題了。
