【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 項目地址),如圖所示:

(2)在“源碼管理”中勾選“Git”選項,

  •  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("hudson.model.DirectoryBrowserSupport.CSP", "")

  Jenkins 在靜態文件頭中引入了 Content-Security-Policy , 在 Jenkins 中具體為DirectoryBrowserSupport,它為 Jenkins 的 HTML/JavaScript、用戶目錄以及文檔等設置了非常嚴格的權限保護。不過,這會導致當通過 Jenkins 查看 HTML 報告時丟失 CSS 樣式,執行上面的腳本將清除文件的權限保護。
  找到“Post-build Actions”選項,單擊“Add post-build action”按鈕,配置“Publish HTMLreports”,如圖所示:
  • HTML directory to archive:用於指定測試報告目錄,這里設置為 test_report。
  • Index page[s]:指定測試報告的索引頁面,這里配置為**/report.html,表示匹配某目錄下的 report.html 文件。
  • Keep past HTML reports:是否保存舊的 HTML 報告。
  • Include files:配置文件,根據提示填寫**/*.html。
  查看 Simple task 首頁,可以發現增加了一個 HTML Report 選項,如圖所示:

單擊“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)。
  關於郵箱的配置還有一些選項,可以選擇不填,單擊“保存”按鈕保存即可。
 
  第二步,回到 Sample test 任務中的配置,找到“Post-build Actions”選項,單擊“Addpost-build action”按鈕,配置“Editable Email Notification”,如圖所示:
  • 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 測試報告和歷史執行情況。 


免責聲明!

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



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