pytest系列(四)- pytest+allure+jenkins - 持續集成平臺生成allure報告

pytest是什麼

pytest是python的一款測試框架,擁有unittest的功能並比它更豐富。html

 

allure是什麼

有很是多的優秀的測試框架,但倒是有很是少優秀的報告工具能夠展現很是清楚的用例執行過程和結果。java

allure是一款開源的,專門用來展現測試結果的工具,目的是但願團隊內部每個人均可以看到很是清楚的測試結果。python

allure能夠與很是多的著名測試框架作集成。apache

     像java語言,能夠與junit4,junit5,TestNG測試框架集成。windows

     python語言,能夠與pytest,behave,nose測試框架集成。框架

allure會將測試用例的執行數據保存到xml文件當中,再利用allure的命令行將文件轉換成html形式呈現出來。maven

allure的官方地址:http://allure.qatools.ru/工具

 

 

安裝allure命令行

官網提供了每一個平臺的,命令行安裝方式。測試

如下是手動安裝方式,適用於各平臺:網站

一、從Maven Center下載最新的安裝包:

http://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/

目前是2.12.1的版本。

二、將包解壓到任何一個目錄。建議不要選C盤或者路徑很深的。好比D:\allure-command-2.12.1

三、跳轉到解壓後的bin目錄下面,windows下執行allure.bat。其它平臺執行allure.

四、配置allure的環境變量:

 

 

五、在命令行當中運行allure —version。

 

 

 

allure與pytest的集成

在allure安裝完成以後,須要與pytest集成,可以在pytest運行完成以後,生成allure的文件 。

一、安裝pytest的allure支撐插件。

pip命令行:pip install allure-pytest

二、在執行pytest命令時,添加allure命令參數:—alluredir=Outputs/allure (相對於pytest命令所在目錄的測試報告目錄)

1 if __name__ == '__main__':
2     pytest.main(["-s","-v","--html=Outputs/reports/pytest.html",
3                  "--alluredir=Outputs/allure"])   # allure文件生成的目錄
             

 

三、等待pytest執行完全部的測試用例,在Outputs/allure下會生成一些文件。

 

 

在cmd命令行當中,執行:allure serve 測試結果文件目錄,就會生成漂亮的html報告。

 

 

 

 

 

allure與jenkins的集成

allure與jenkins集成以後,能夠直接在jenkins上,直接查看到上圖的allure結果。

並由於jenkins的構建記錄都存在,因此能夠看到歷史構建曲線圖,用例數的變化、經過率的變化、耗時的變化等都可查看到。

集成步驟以下:

一、在jenkins上安裝allure插件。

Step1: 去jenkins插件網站上下載allure插件最新版本:

http://mirrors.jenkins-ci.org/plugins/allure-jenkins-plugin/

Step2: 打開jenkins,在系統管理 —> 插件管理 —>Advanced —> Upload Plugin

上傳.phi格式的插件,點擊[上傳]操做。

 

 

 

會自動跳轉到如下頁面。此處黃色球的提醒是指:此插件已經安裝了,jenkins須要重啓使此更新生效。

如果第一次安裝,應該是藍色球。

可將jenkins服務從新重啓,使安裝的插件生效。

 

 

 

 

二、在jenkins 全局工具當中配置allure命令行。

在 系統管理 —> 全局工具配置 —> 當中作如下配置(allure和jdk),配置完並保存:

 

 

 

 

 

 

三、在Job當中,配置allure報告展現:

 

 

 

 

 

針對以上,我對job作了如下調整:

一、將當前job的工做空間調整爲,個人pytest用例所在工程目錄:

 

 

 

二、在build當中,直接執行1中目錄下的python文件(包含了pytest生成allure報告的命令)

 

 

 

配置完成以後,當即構建此工程。連續構建幾回,有了歷史記錄以後

 

 

 

 

相關文章
相關標籤/搜索