安裝allure命令行
上傳allure的zip包
使用rz命令將allure-commandline-2.12.1.zip上傳到服務器的/opt目錄下
解壓
unzip allure-commandline-2.12.1.zip
配置環境變量
將解壓后allure下bin目錄的路徑/opt/allure-2.12.1/bin
配置進環境變量
vim /etc/profile
# 在PATH后追加以下內容,保存
:$PATH:/opt/allure-2.12.1/bin
# 使環境變量生效
source /etc/profile
驗證
在命令行輸入allure --version,能出現版本說明allure命令行已經安裝成功了
allure --version
安裝allure_pytest
allure_pytest是對allure需要的json文件的生成做的一個插件
pip3 install -y allure_pytest
基本用法
allure.epic
定義史詩
allure.feature(常用)
大的功能模塊,比如登錄功能
allure.story(常用)
大功能下的子功能,比如登錄模塊下的正常登錄、不填手機號登錄等
、
allure.title
用例的標題
allure.severity(常用)
用例的優先級,主要分為以下五個:
- blocker級別:中斷缺陷(客戶端程序無響應,無法執行下一步操作)
- critical級別:臨界缺陷(功能點缺失)
- normal級別:普通缺陷(數值計算錯誤)
- minor級別:次要缺陷(界面錯誤與UI需求不符)
- trivial級別:輕微缺陷(必輸項無提示,或者提示不規范)
比如我們可以給正常登錄用例給個blocker的級別,因為登錄失敗影響后續操作,給不填手機號登錄給個critical級別
allure.tag
給測試方法打標簽,標簽可以有多個,比如給正常登錄打2個標簽:最重要,回歸測試,給不填手機號登錄打1個標簽:次重要。注意實際運行時把pytest.mark.smoke中的smoke也作為tag了
allure.testcase
allure報告關聯測試用例的地址
allure.issue
allure報告關聯jira的bug,allure.issue有兩個參數,第一個是bug的地址,第二個是bug的名字
allure.description
測試用例的描述,當然你也可以使用@allure.description_html
,或者在測試方法中使用""" """ 注釋
allure.step(常用)
定義的測試步驟,由於我們的框架設計,這個步驟主要定義在page_objects目錄下的各個頁面對象中,以登錄為例:
allure.attch(常用)
添加附件,可以是文本或者圖片,一般用來添加失敗截圖,由於我們的失敗截圖功能是在conftest.py中,因此需要修改conftest
allure.link
定義鏈接,在測試報告中展示
報告預覽
allure serve allure_reports #allure_reports是存放json文件的目錄
如果你訪問不到,記得檢查下防火牆是否關閉,沒有就把它關了
#查看防火牆狀態
systemctl status firewalld
#關閉防火牆
systemctl stop firewalld
然后訪問瀏覽器,http://虛擬機ip:端口
生成報告
allure生成測試報告要求對應的報告目錄必須是空目錄,實際場景中上次運行已經生成了報告,下次運行后又要再生成,可以利用--clean先清空目錄,然后生成測試報告
allure generate allure_reports -o allure_reports/html --clean #allure_reports為存放json文件的目錄,allure_reports下面的html目錄為存放html報告的目錄
參考文章
《Python學習筆記|python之allure報告》
《使用 allure 測試報告以后,我受到了公司嘉獎》
《allure-pytest的報錯截圖添加到報告》
《allure描述用例詳細講解》
《pytest框架優化——將異常截屏圖片加入到allure報告中》