文章目錄
1 jenkins的介紹與安裝
1.1 應用場景
衆所周知,寫好一個自動化測試項目的代碼之後,需要在命令行使用"pytest"進行運行,然後再使用命令“allure generate report/ -o report/html --clean”生成allure報告。但使用Jenkins可以自動地完成這些操作。
1.2 介紹
jenkins是一個開源軟件項目,是基於java開發的一種持續集成工具,用於監控持續重複的工作,旨在提供一個開放易用的軟件平臺,使軟件的持續集成成爲可能。
1.3 安裝
關於jenkins的安裝,可參考小編的其他博客----使用運行war的形式安裝jenkins
2 jenkins插件安裝
2.1 安裝Allure插件
要想使用Jenkins生成allure的xml文件,必須安裝此插件
安裝步驟
- 進入Jenkins,點擊“系統管理” -》 “管理插件” -》 “可選插件”
- 搜索框中輸入:allure,搜索結果中選中allure,點擊“直接安裝”即可
或者,離線安裝,方式如下:
① 在下列網址找到要安裝的插件,並下載。
https://mirrors.tuna.tsinghua.edu.cn/jenkins/plugins/
http://mirror.esuni.jp/jenkins/plugins/
http://mirror.xmission.com/jenkins/plugins/
② 選擇“高級”,在Upload Plugin中選擇①中下載好的.hpi文件,再點擊Upload即可。
2.2 安裝Allure Commandline工具
要想使用Jenkins把allure的xml文件轉成html文件,必須安裝此工具
安裝步驟
- 確保allure插件已經安裝成功
- 點擊“系統管理” -》“全局工具配置”
- 找到Allure Commandline,點擊“Allure Commandline安裝”
- 輸入一個別名(隨意)
- 輸入安裝目錄
1)https://bintray.com/qameta/generic/allure2下載 allure-2.6.0.zip2.
2)解壓縮到一個目錄(不經常動的目錄)
3)輸入解壓後的目錄。(目錄下應該包含四個文件夾,如圖所示)
- 取消“自動安裝”的選擇
- 點擊“save”進行保存
3 Jenkins持續集成
配置完成後,會自動執行一套流程:
1)自動從GitHub下載自動化測試項目
2)自動執行pytest進行運行
3)自動生成allure報告
4)如果項目中有不通過的腳步,會自動給相關人員發郵件
3.1 準備自動化項目
讓Jenkins自動化執行某個項目並生成報告以及出錯發郵件這些功能,必須先準備一個可以使用pytest運行的自動化項目。使用pytest+allure,並確保可以生成對應的allure報告。
3.2 將項目上傳到GitHub
1)新建GitHub項目,輸入項目名,點擊創建。
2)將本地倉庫的項目push到git上
3)查看項目的git地址
3.3 新建Jenkins項目
1)進入Jenkins主頁,點擊“新建”
2)輸入項目名稱,並點擊“構建一個自由風格的軟件項目”
3.4 Jenkins相關配置
3.4.1 General配置
勾選“Github project”,輸入Project url
3.4.2 源碼管理配置
1)勾選Git,輸入Repository URL,點擊Add,點擊Jenkins
2)輸入GitHub用戶名和密碼,點擊Add
3.4.3 構建觸發器配置
勾選Poll SCM,日程表中填寫 */1 * * * *
3.4.4 構建配置
1)根據平臺選擇執行的命令類型
2)配置pytest環境變量
①mac
export PATH=$PATH:/Library/Frameworks/Python.framework/Versions/3.6/bin
pytest
②Windows
PATH=$PATH;C:\Users\Administrator\python3.6\scripts
pytest
3.4.5 報告配置
1)點擊增加構建後步驟,選擇Allure Report
2)在path中輸入allure報告的xml所在的目錄名稱
3)點擊高級,在Report path中輸入allure-report
3.4.6 郵件配置
- 發件人測試郵件配置
1)點擊“系統管理” -》“系統設置”
2)找到Jenkins Location,在“系統管理員郵件地址”輸入發件人測試郵箱地址。
3)找到郵件通知,輸入SMTP服務器,如smtp.126.com,輸入用戶名默認郵件後綴,如@126.com。點擊高級,輸入用戶名爲發件人測試郵箱地址,密碼爲客戶端授權密碼(若不知道客戶端授權密碼,可自行百度)
4)勾選通過發件測試郵件測試配置
5)輸入Test e-mail recipient爲收件郵箱
6)點擊Test configuration,會提示Email was successfully sent。收件人郵箱應該收到了郵件。
結果
- 發件人正式郵件配置
1)點擊“系統管理” -》 “系統設置”
2)找到Extend E-mail Notification,輸入SMTP服務器,如smtp.163.com,輸入用戶名默認郵件後綴,如@163.com
3)點擊高級,輸入用戶名爲發件人郵箱地址,密碼爲客戶端授權密碼(若不知道客戶端授權密碼,可自行百度)
4)選擇Default Content Type爲HTML
5)將以下html代碼複製到Default Content中
<hr/>
(本郵件是程序自動下發的,請勿回覆!)<br/><hr/>
項目名稱:$PROJECT_NAME<br/><hr/>
構建編號:$BUILD_NUMBER<br/><hr/>
git版本號:${GIT_REVISION}<br/><hr/>
構建狀態:$BUILD_STATUS<br/><hr/>
觸發原因:${CAUSE}<br/><hr/>
目錄:${ITEM_ROOTDIR}<br/><hr/>
構建日誌地址:<a href=" ">${BUILD_URL}console</a ><br/><hr/>
構建地址:<a href="$BUILD_URL">$BUILD_URL</a ><br/><hr/>
報告地址:<a href="${BUILD_URL}allure">${BUILD_URL}allure</a ><br/><hr/>
失敗數:${FAILED_TESTS}<br/><hr/>
成功數:${FAILED_TESTS}<br/><hr/>
變更集:${JELLY_SCRIPT,template="html"}<br/><hr/>
- 收件人配置
收件人需要在項目中進行配置。
1)進入項目
2)點擊配置
3)點擊構建後操作,點擊增加構建後操作步驟,點擊Editable Email Notification
4)點擊右下角,高級 -> 高級設置 -> 高級
6)輸入Recipient List爲收件人,多個收件人用英文逗號隔開
結果
收到下圖郵件,即爲成功。
3.5 構建
所謂構建,也就是運行的意思。構建有兩種方式,自動構建和手動構建。
-
自動構建
1)在配置觸發器時,輸入的*/1 * * * * ,表示Jenkins會每分鐘檢索GitHub,看是否有代碼更新,如果有,則會自動構建。
2)Jenkins剛開始是沒有任何代碼的,當我們保存後,會自動檢測GitHub,如果之前上傳過代碼,會自動構建。
3)等待構建完成,點擊右側圖標,即可查看報告。
4)紅色圓點表示項目中有未通過的測試腳本,如果全部通過,則爲藍色。 -
手動構建
所謂手動構建,就是手動在項目主頁點擊構建。