pytest+jenkins+allure導出報告
環境安裝:
windows7+64位
pytest:4.0.2
allure的安裝:allure的python庫pytest-allure-adaptor
jenkins的安裝:2.138.2
JDK 1.8
一、pytest
pytest的安裝不做說明,可以通過pytest --version查看安裝的版本
二、安裝Allure Pytest Adaptor
Allure Pytest Adaptor是Pytest的一個插件,可以通過它生成Allure所需要的用於生成測試報告的數據
pip install pytest-allure-adaptor
三、jenkins的簡單安裝
前提:註意JDK的版本問題,本測試使用的是1.8的版本
如已安裝,通過java -version檢查版本
1.安裝jenkins
jenkins的下載地址:https://jenkins.io/download/
選擇的是2.138.2的版本
選擇的是jenkins.war
下載成功後,將war包文件放入已提前建好的jenkins目錄中
進入對應的文件目錄,然後執行下面的命令:(啟動也是以下的命令)
java -jar jenkins.war
以上表示啟動成功!
在安裝即將完成過程時,可以看到解鎖jenkins所需的密碼,以及存儲的路徑 C:\Users\Administrator\.jenkins\secrets\initialAdminPassword
打開瀏覽器--輸入http://localhost:8080--回車:(界面中需要輸入的管理員密碼就是上面截圖中記錄的密碼)
點擊右下方的“繼續”,進入下面的界面,我是直接點擊右上角的“X”,跳過該步驟(插件可以登錄jenkins後,在系統設置--管理插件進行安裝)
開始使用Jenkins(如果剛進入的頁面是空白,點擊頁面返回可出現下方界面)
2.配置jenkins
登錄後,在系統管理中,設置“系統設置”“全局安全配置”“全局工具配置”“插件管理”
1)系統管理--全局安全配置
下次登錄後,會發現登錄界面多了一個註冊賬號的入口
右上角的設置,可以管理員密碼進行修改
2)系統管理--系統設置
選擇全局屬性-環境變量,增加鍵值對,然後輸入系統管理員郵件地址,其他選項一般默認即可,點擊保存
鍵:LANG
值:zh_CN.UTF-8
3)系統設置--全局工具配置
選擇新增JDK,然後輸入別名和安裝路徑,然後點擊保存
4)系統管理--管理插件
可以在這個模塊選擇自己會用到的插件進行安裝。此次安裝的是allure
在“可選插件”中搜索allure進行“直接安裝”即可!
安裝過程中出現安裝失敗的解決辦法:
對報錯的內容,進行下載安裝。在插件管理中進行高級安裝(一般下載第一個報錯的)
http://updates.jenkins-ci.org/download/plugins/
然後進行重啟,如果重啟報下面的錯誤:
Jenkins cannot restart itself as currently configured
Jenkins首頁--> 系統管理--> Install as Windows service( 設置為Windows服務 ),點擊安裝即可。
安裝後可自動重啟,重啟後,查看已安裝插件
3. Allure Commandline 配置
下載allure執行工具,通過下載allure2 安裝下載
解壓後,配置bin的環境變量
配置完環境後,驗證:
(如果有問題的話,試下運行allure.bat文件後,再次驗證)
jenkins添加allure執行工具 :
首頁--系統管理--全局工具配置,點擊“Allure Commandline安裝”按鈕去掉自動安裝勾選框—-填寫name及剛下載的文件夾的根目錄路徑 --保存
以上就是安裝及配置完成了!
開始使用:
新建任務
回到主界面,新建任務--輸入任務名稱--選擇任務類型--點擊確定
確定後進入下面的頁面,對項目進行各方面進行配置。
構建--增加構建步驟--執行Windows批處理命令(根據需要進行選擇);構建後操作--選擇Allure Report.
命令:
pytest E:\py\appium19\src\test_case\test_logintest.py --alluredir ./allure-report
exit 0
保存後,進入相應的項目界面
點擊“立即構建”即可
點擊下圖圖標,可查看allure報告
報告本地存儲位置如下:(但是本地無法直接查看,需要配置server服務器)
C:\Users\Administrator\.jenkins\workspace\test003
用到的測試用例:
相關報錯記錄:
1. 執行windowd命令中,如果忘記增加 exit 0 ,生成allure報告時會報錯
2.生成的allure報告中,用例顯示為空
主要是target的問題,修正如下:
修改配置--構建--構建後操作的Path,再次構建後,allure報告顯示正常。
pytest+jenkins+allure導出報告