如何利用jenkins插件查看allure報告-----完整篇(解決404和無數據問題)


背景:

python3+appium+pytest+allure寫了安卓的自動化腳本,在windows本機pycharm上跑通過后生成了allure報告。  公司jenkins搭建在linux服務器上。

痛點:

1.allure報告需要一堆css/js靜態數據文件,才能展示數據,給領導匯報時總不能一丟就丟個大大的壓縮包,並且還不能保證能查看成功的吧----edge瀏覽器能打開,其他瀏覽器打開無數據;

2.把腳本集成到jenkins上,整到linux服務器上跑,又得在服務器上去折騰一套環境出來,需要安裝的包node、sdk、net、appium、adb 巴拉巴拉的,蠻多,appium還必須保證時時刻刻是啟動的狀態,服務器上測試識別不到真機,只能用安卓模擬器測試。總結下來沒必要,本機上連真機測試就好。

期望:方便他人直觀的看到測試報告

解決方案:

1.不在服務器上運行測試腳本,單純地利用jenkins中的allure插件查看測試報告;

2.起個nginx服務,把把測試報告文件夾放在www目錄下,配置一下映射這個index.html;

最終選擇:

最后還是選擇在jenkins里去裝個插件,比較簡單

實施步驟:

1.打開jenkins--插件管理--可選插件,搜索安裝最新版allure

2.下載allure-commandline 工具:https://dl.bintray.com/qameta/generic/io/qameta/allure/allure/2.7.0/allure-2.7.0.zip,安裝到服務器/export/runtimes/allure-commandline(路徑可以自己定)下;

    注意:解壓后,需要配置環境變量,vi /etc/profile,追加兩行內容后,. /etc/profile使修改后 的配置生效:

     export ALLURE_HOME=/export/runtimes/allure-commandline
     export PATH=$PATH:$ALLURE_HOME:/bin

     驗證服務器上allure安裝是否成功:輸入allure,運行無報錯。

3.安裝好1,2后重啟jenkins,將pytest生成的測試結果xml和html兩個文件夾上傳到svn上去。在jenkins構建一個新項目,代碼源:svn上測試結果路徑。

 構建步驟:無,一開始我在構建步驟下寫了:allure generate \xml_report_path -o \html_report_path --clean,后來一執行發現有兩條allure generate執行記錄,原因是構建后操作中添加allure-report后,這個插件會自動去執行這條命令,並不需要人為去輸入,執行兩次后報告里反而會沒有數據。

 構建后步驟:增加allure-report,如下:

    圖中這兩個目錄不一樣,否則會提示找不到allure-report或allure-result路徑。

          

4. 點擊構建,報錯了,提示:      java.io.IOException: Can't find allure commandline <null> ,初步可以判斷是第二步allure-commandline 的問題,服務器上執行allure --vresion,也能返回正確版本號,說明服務器上allure是沒問題的。這時候,就要去jenkins上去配置全局工具配置了。輸入別名,勾選自動安裝選擇maven 2.5.1就好了。但更可能碰到的情況是設置完后依然報同樣的錯,這時,就需要按下圖來設置:

           

 

      這里設置完成后,還需要去系統設置--全局屬性下添加安裝目錄:

      

 

       這個時候去執行,你就會發現不會再報allure-commandline找不到的錯了。

5.再次構建,allure報告和趨勢圖就出來了,點擊allure-report就能跳轉到正確的報告頁面了。

      

 

如果碰到提示沒有配置java的報錯,就到系統管理-全局工具配置中添加jdk路徑。

      

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM