【Jenkins基礎教程】WEB自動化專案配置
WEB自動化專案配置
配置 Git/GitHub
現在越來越多的專案開始使用 Git 進行程式碼的版本管理,這裡介紹基於 Git/GitHub 的Jenkins 配置。 第一步,進入 Jenkins 首頁,單擊“Manage Jenkins”→“Global Tool Configuration”選項,找到 Git 選項,如圖所示: 在“Path to Git executable”選項中填寫 Git 可執行檔案的本地路徑,如 C:\ProgramFiles\Git\bin\git.exe,單擊“save”按鈕儲存配置. 第二步,回到 Simple test 中的配置。 (1)在github上選擇要測試的專案,複製專案URL:(2)勾選“Github 專案”,填寫“專案 URL”(即 GitHub 專案地址),如圖所示:
- Repository URL:填寫 GitHub 專案地址。
- Branch Specifier (blank for 'any'):設定專案分支,預設為 master 分支。
- Repository browser:原始碼庫瀏覽,預設為 Auto。
(3)在"構建觸發器"中勾選“Poll SCM”選項,通過輪詢的方式檢測Git 倉庫的更新,並執行構建任務,如圖所示:
Schedule:設定輪詢時間。“H/2 * * * * ”表示每兩分鐘檢查一次專案是否有新提交的程式碼,如果有,就將新提交的程式碼拉取到本地。
儲存之後,即可向 pyautoTest 專案倉庫提交程式碼,通過 SCM 輪詢檢查專案更新並拉取程式碼。
Simple task 首頁會多出一個“Git 輪詢日誌”選項,單擊檢視 Git 輪詢日誌,如圖所示:
配置專案執行
通過前面的配置並執行構建, pyautoTest 專案程式碼已經拉取到 Jenkins 目 錄(…\Jenkins\workspace\Simple task\),pyautoTest 專案程式碼如圖所示: 開啟 Simple test 首頁,單擊“Configure”選項,重新配置任務,修改構建命令如下:單擊“儲存”按鈕,儲存任務並重新執行構建,構建日誌如下:
通過構建日誌可以看到,自動化專案已經通過 Jenkins 被執行了。
配置 HTML 報告
在 pyautoTest 專案中,通過 pytest-html 外掛可以生成 HTML 報告,接下來,在 Jenkins中配置 HTML 報告的檢視,再次單擊“Configure”選項進行配置。 找到“構建”選項,單擊“Add build setup”按鈕,勾選“Execute system Groovy script”選項,在“Groovy script”中新增:System.setProperty("Jenkins 在靜態檔案頭中引入了 Content-Security-Policy , 在 Jenkins 中具體為DirectoryBrowserSupport,它為 Jenkins 的 HTML/JavaScript、使用者目錄以及文件等設定了非常嚴格的許可權保護。不過,這會導致當通過 Jenkins 檢視 HTML 報告時丟失 CSS 樣式,執行上面的指令碼將清除檔案的許可權保護。 找到“Post-build Actions”選項,單擊“Add post-build action”按鈕,配置“Publish HTMLreports”,如圖所示:hudson.model.DirectoryBrowserSupport.CSP", "")
- HTML directory to archive:用於指定測試報告目錄,這裡設定為 test_report。
- Index page[s]:指定測試報告的索引頁面,這裡配置為**/report.html,表示匹配某目錄下的 report.html 檔案。
- Keep past HTML reports:是否儲存舊的 HTML 報告。
- Include files:配置檔案,根據提示填寫**/*.html。
單擊“HTML Report”選項,可檢視歷史構建生成的測試報告列表,如圖所示:
配置構建統計
有時需要直觀地檢視歷史構建情況,這時 pyautoTest 生成的 XML 格式的報告就派上用場了。 單擊“Configure”選項,繼續進行任務的配置。找到“Post-build Actions”選項,單擊“Add post-build action”按鈕,配置“Publish JUnit test result report”,如圖所示:測試報告(XML):指定測試報告目錄下面的 XML 檔案,如/test_report/**/*.xml。重新儲存任務並執行構建,XML 報告統計如圖所示:
頁面右側是“測試結果趨勢”,可以幫助我們檢視自動化測試的歷史執行情況。單擊“最新測試結果”,可以檢視更詳細的 XML 測試報告:
配置自動傳送郵件
自動傳送郵件也是常用功能之一,這裡將介紹如何配置自動傳送郵件。
第一步,在 Jenkins 首頁,單擊“系統管理”→“系統設定”選項。 (1)單擊“Jenkins Location”選項,配置“System Admin e-mail address”,如圖所示:Jenkins 將用這個郵箱傳送通知郵件,這裡必須填寫,並且必須與後面的配置保持一致:
(2)單擊“Extended E-mail Notification”選項,可以看到配置項較多,但並不是每一項都需要填寫,郵箱基本配置如圖所示:- SMTP server:郵箱 SMTP 服務地址,如 126 郵箱服務地址為 smtp.126.com。
- Default user E-mail suffix:郵箱字尾,126 郵箱字尾為@126.com。
- Use SMTP Authentication:勾選使用 SMTP 認證。
- User Name:傳送郵件的使用者名稱。
- Password:客戶端授權碼,並非郵箱登入使用的密碼,請自行查詢資料設定客戶端授權碼。
- Use SSL:是否使用 SSL 連線 SMTP 伺服器,預設勾選。
- SMTP port:SMTP 埠,預設為 465。
- Charset:字符集,設定為 UTF-8。
- Default Content Type:預設郵件內容型別,這裡選擇 HTML(text/html)。
- Project Recipient List:接收構建結果的郵件列表。
- Default Subject:郵件標題,根據 Jenkins 任務填寫。
- Default Content:郵件正文,配置如下。
(本郵件自動下發,請勿回覆!)<br/> 構建專案:$PROJECT_NAME <br/> 構建版本:# $BUILD_NUMBER <br/> 構建狀態:$BUILD_STATUS <br/> 執行用例數:${TEST_COUNTS} <br/> 成功用例數:${TEST_COUNTS, var="pass"} <br/> 失敗用例數:${TEST_COUNTS, var="fail"} <br/> 跳過用例數:${TEST_COUNTS, var="skip"} <br/> 合計: ${TEST_COUNTS, var="total"} <br/> Check console output at $BUILD_URL to view the results.
這裡使用 Jenkins 特定變數配置,郵件會將變數替換為具體的結果。
Attachments:郵件附件,這裡可以指定測試報告的目錄。 Attach Build Log:附加構建日誌。 單擊“Advanced Settings…”按鈕,更多選項如圖所示:Triggers:選擇觸發郵件傳送規則,可以選擇每次傳送,也可以選擇當任務失敗時傳送。
Send To:指定傳送郵件的物件。 儲存任務,再次執行任務構建。登入收件箱,可以看到 Jenkins 自動傳送的郵件如圖所示: 通過郵件可以看到本次構建的基本情況,還可以通過附件(build.log)檢視構建日誌。 至此,自動化專案的 Jenkins 配置已經基本完成。這些配置可以滿足以下需求: (1)編寫自動化測試用例並將程式碼提交到 GitHub 倉庫。 (2)Jenkins 通過輪詢檢測程式碼是否更新。 (3)拉取最新的測試程式碼並執行,將執行結果傳送到指定郵箱。 (4)同時,通過 Jenkins 也可以檢視 HTML 測試報告和歷史執行情況。本部落格所有文章僅用於學習、研究和交流目的,歡迎非商業性質轉載。
本文來自部落格園,作者:hello_殷,轉載請註明原文連結:https://www.cnblogs.com/yinzuopu/p/15588806.html
本文版權歸作者和部落格園共有,歡迎轉載,但必須給出原文連結,並保留此段宣告,否則保留追究法律責任的權利。