iT邦幫忙

DAY 24
5

使用Jenkins打造.Net CI Server系列 第 24

CI Server 24 - 使用Jenkins執行網頁自動化測試

  • 分享至 

  • xImage
  •  

在前一篇文章中介紹了如何使用Selenium來錄製並執行自動化測試,
今天要向大家介紹如何將這項功能整合在Jenkins的部署工作之中,
我們可以在部署完網站之後,直接地進行對各項功能的自動化測試,
如此一來即可在第一時間就能確保網站的各項服務是正常運作的,
如果某功能有問題,也可以在第一時間作出決策 (ex. Rollback)
※安裝Selenium Server
Selenium Server是用來提供非IDE介面執行自動化測試的入口,
官網提供的版本是由Java所撰寫而成,所以執行環境需要預先安裝好Java,
除此之外Selenium Server還提供了不同瀏覽器版本的Driver以供進行測試 (ex. IE, Chrome)
我們可以從官網下載Selenium Server,並存放至C:\Program Files (x86)\SeleniumServer

※測試Selenium Server運作
我們可以透過Command Line來進行Selenium Server的操作,
語法格式如下

java -jar SeleniumServer位置 -htmlSuite 瀏覽器種類 測試Suite位置 輸出結果位置

開始執行我們的自動化測試,輸入以下指令

java -jar "C:\Program Files (x86)\SeleniumServer\selenium-server-standalone-2.25.0.jar" -htmlSuite "*firefox" http://ci-sample.kirkstudio.tw "C:\Users\kirkchen\Documents\githubproject\ci-sample\ci-sample.website.automationtest\TestSuite.html" "C:\Users\kirkchen\Documents\githubproject\ci-sample\SeleniumReport.htm"


執行之後可以看到跳出瀏覽器視窗開始測試

※安裝Seleniumhq PlugIn

  1. 進入Jenkins首頁後,點選左邊的管理Jenkins,再選擇管理外掛程式
  2. 點選可用的,勾選Seleniumhq PlugIn,選擇安裝並重啟
  3. 回到首頁,點選管理Jenkins,選擇設定系統
  4. 輸入Selenium Server的位置並儲存

※設定專案執行自動化測試

  1. 回到Jenkins專案首頁,進入設定畫面
  2. 找到Build區段,新增SeleniumHQ htmlSuite Run
  3. 設定自動化測試執行參數
  4. 找到Post Build Action區段,新增Publish Selenium Report
  5. 輸入報表位置SeleniumReport.html

※查看自動化測試報表

  1. 回到專案首頁並執行建置,可以看到專案首頁出現結果
  2. 點擊Selenium Report可以看到關於自動化測試的詳細報表

※總結
我們設定完成了在部署之後自動執行自動化測試,
所以我們在也不需要害怕更新網站後沒辦法馬上發現問題,
而是在一部署完畢馬上就能得到一份測試報告,驗證網站的穩定性,
除此之外也可以在每日建置加入自動化測試,確保每天的修改沒有影響正常的功能運作,
有了Selenium這最後一塊拼圖,我們的CI Server有了單元測試、整合測試,
也有各種分析報表,所有我們開發專案都能夠以量化的方式呈現健康狀態,
大大的方便我們管理專案的開發和發布情況!
關於今天的內容,如果有任何問題歡迎大家提出來一起討論!


上一篇
CI Server 23 - 使用Selenium進行瀏覽器自動化測試
下一篇
CI Server 25 - 替Jenkins加入登入及權限控管系統
系列文
使用Jenkins打造.Net CI Server30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 則留言

0
ted99tw
iT邦高手 1 級 ‧ 2012-11-01 17:19:31

讚讚讚

好多技術鐵文都是愈來愈精彩!!!

0
ping1971
iT邦新手 5 級 ‧ 2016-05-26 09:00:02

想請教樓主,我在用selenium & jenkins 之後產生的報告中文部分是亂碼,以下為圖示!http://ithelp.ithome.com.tw/upload/images/20160526/20081874X0VitNo9Hu.jpg

我要留言

立即登入留言