一、報告結構
1.側邊欄介紹
2.界面描述
二、allure各種裝飾器屬性介紹
1.添加環境描述文件
2.自定義categories分類:【側邊欄Categories中】
3.模塊分類標記:【側邊欄Behaviors中】
- @allure.epic("總描述"):史詩級,往下是 feature
- @allure.feature("測試模塊描述"):功能點的描述,往下是 story
- @allure.story("測試描述"):故事級,再往下就是 用例的title
知識點:
- 提供了三個等級裝飾器,類似於pytest的@pytest.mark.xxoo ,且三個有樹狀層級關系
- 也支持像pytest一樣支持運行某些或某個有某類標記的用例,詳見原文鏈接
4.自定義Suites中【側邊欄Suites-中間 用例層級關系】
- @allure.suite('這是天氣套件') # 可裝飾給類
5.修改用例默認顯示名稱:【中間 用例層級關系中的用例名稱】
- @allure.title("不再顯示默認test_01名稱,顯示這個,可讀性高,建議使用")
- @allure.title("成功登錄,測試數據是:{test_loginss}") 動態標題,結合@pytest.mark.parametrize使用
6.添加用例操作步驟的說明 【右側 Test body】
- @allure.step("第一步") :允許對每個測試用例進行非常詳細的步驟說明,可以讓測試用例在allure報告【右側Test body】中顯示詳細的測試過程
7.添加附件操作:【右側 用例下方]
- 添加文字 :allure.attach(body='附件的內容', name='附件名字', attachment_type=allure.attachment_type.TEXT)
- 添加html頁面:allure.attach(body='<head></head><body> HTML頁面代碼 </body>', name='附件名字', attachment_type=allure.attachment_type.HTML)
- 引入已有文件:allure.attach.file(source='./reports.html', attachment_type=allure.attachment_type.HTML)
8.添加注釋或描述:會顯示在【右側 Description】
- @allure.description("描述內容"),其實等同於 直接在測試用例函數名下添加 """ 注釋內容""",喜歡哪種用哪種
- @allure.description_html(str):相當於傳一個HTML代碼組成的字符串,類似 allure.attach() 中傳HTML
9.添加鏈接跳轉:【右側 Link】
- @allure.link(url, link_type=LinkType.LINK, name=None)
- @allure.issue()
- @allure.testcase()
知識點:
- issue()和testcase()其實調用的也是link(),三個方法是一樣的,只是link_type不一樣顯示出來樣式不同,可以更好地區分【訪問鏈接、Bug鏈接、測試用例鏈接】
- 必傳參數 url:跳轉的鏈接
- 可選參數 name:鏈接的顯示,默認原鏈接,建議傳!!不然可讀性不高
- 而出現三個裝飾器的原因是為了更好地將鏈接分類【訪問鏈接、Bug鏈接、測試用例鏈接】
10.allure.dynamic.xxoo() 動態生成裝飾器
上面講的好多個裝飾器,其實都支持配合參數動態生成,如下:詳情見原鏈接
11.添加標簽Tags: 【右側 Tags】
- @allure.tag('這是tag')
12.添加用例等級:【中間圖表 + 右側Severity 】
severity 看上去像是嚴重程度,官方翻譯為優先級,代表的也是優先級
allure支持給用例設置等級,在 allure 報告中可看到各個用例的等級,也可以看到各優先級的失敗、通過用例數,以及哪條用例是失敗、通過的
命令行也可以根據優先級,選擇需要運行的測試用例,詳見原文鏈接
- @allure.severity("normal")
等級介紹:
- blocker:阻塞缺陷(功能未實現,無法下一步)
- critical:嚴重缺陷(功能點缺失)
- normal: 一般缺陷(邊界情況,格式錯誤)
- minor:次要缺陷(界面錯誤與ui需求不符)
- trivial: 輕微缺陷(必須項無提示,或者提示不規范)