1. 程式人生 > >selenium+jenkins網頁自動化測試的構建

selenium+jenkins網頁自動化測試的構建

jenkins+selenium可以做到對web自動化的持續整合。

Jenkins的基本操作:

一、新建檢視及job

新建檢視:

 

新建job:

可以選擇構建一個自由風格的軟體專案或者複製已有的item

 

二、準備工作:

安裝Jenkins外掛,SSH plugin ,Email Extension Plugin ,Hudson Seleniumhq plugin

點選系統管理->管理外掛

在可選外掛面板Filter中輸入外掛名,勾選複選框,點選直接安裝,安裝完成後重啟Jenkins

三、重啟後操作:

1.將job之間建立連線

可新增一個 Post-build Actions 來配置下一個需要構建的job

 

Trigger only if build is stable:只有本次構建成功才執行下一個job

Trigger even if the build is unstable:如果本次構建不穩定也可以執行下一個job,但是失敗則停止構建

Trigger even if the build fails:就算本次構建失敗也可以執行下一個job

2.配置自動化時間

在上步驟建立的job中新增自動執行時間表

開啟job配置

勾選構建觸發器的Build periodically

 

時間格式:* * * * *

*:分鐘 小時 日 月 星期

*表示都

MINUTE Minutes within the hour (0–59)

HOUR   The hour of the day (0–23)

DOM    The day of the month (1–31)

MONTH  The month (1–12)

DOW    The day of the week (0–7) where 0 and 7 are Sunday.

*此處分鐘我並不明白為什麼不能寫數字

PS:點選“?”可檢視配置要求

3.配置Jenkins的郵件

進入系統管理->系統設定

配置郵件通知:

 

*之前使用了“使用SMTP認證”,反而無法傳送郵件

配置Jenkins Location的系統管理員郵件地址:

 

配置預設郵件格式:

Extended E-mail Notification

主要修改:

Default Recipients:接收郵件地址,以“,”分隔

Default Subject:預設郵件主題

Default Content:預設郵件內容

修改job中的郵件傳送配置

點選job名稱,點選配置

 

*其他都可以按照預設的來,主要修改Triggers

在Add Trigger中新增Failure - Any , Unstable(Test Failures),在構建失敗或不穩定時都會發送郵件,如果沒有新增任何Trigger,將不會發送任何郵件出來

 

 以上jenkins的配置完成了。

然後實現安裝在Linux的Jenkins可以執行Windows下的selenium test case

一、配置Jenkins的Windows節點

1、點選左側面板中:

系統管理->管理節點

2、點選左側面板:新建節點

3、輸入節點名稱,選擇Dumb Slave,點選OK

 

4、輸入相關配置,點選save

# of executors:同時可執行的job數量,預設為1

遠端工作目錄:目標Windows的工作目錄

標籤:用來指定job以什麼方式來進行構建

用法:選擇“只允許執行繫結到這臺機器的job”

啟動方法:選擇“Launch slave agents via Java Web Start”,Windows機器推薦選擇該方法

* 其他可隨意或預設

 

5、save成功後出現以下記錄

 

6、配置Windows機器

在目標Windows目錄中建立上述的遠端工作目錄:E:\Jenkins

點選機器名:Windows_demo,出現如下頁面:

 

將Run from slave command line下的slave.jar下載到遠端工作目錄下,同時將Java命令複製到txt檔案中,儲存成bat檔案。

 

雙擊bat檔案,建立Windows與Jenkins之間的聯絡。

* 可將open_connecte.bat拖至win->all programs->startup,開機自啟動

在管理節點中可看到連線資訊(37與38就是上述過程建立的機器):

 

二、在遠端工作目錄中安裝selenium-server

雙擊bat檔案,建立Windows與Jenkins之間的聯絡後,會在E:\jenkins中出現workspace資料夾,用來存放job資訊。

 

1、在workspace中建立用來存放test case的資料夾:Test_script

存放test case

*不要出現中文的檔名,存放suite格式的test case

2、下載selenium-server-standalone-2.47.1.jar存放至E:\jenkins\workspace

 

3、新建以Windows機器執行的job

點選Jenkins的新建,輸入Item名稱,選擇“構建一個自由風格的軟體專案”,點選OK:

 

專案設定中,勾選Restrict where this project can be run,同時在Label Expression中輸入上述建立的標籤,連線到剛剛建立的節點。

 

增加構建步驟方式一:選擇SeleniumHQ htmlSuite Run:

 

配置SeleniumHQ htmlSuite Run:

browser:執行指令碼的瀏覽器,可輸入*firefox,*chrome,*iexplorer等

startURL:使用的tomcat路徑

suiteFile:指令碼路徑

resultFile:測試結果儲存路徑,最好儲存在workspace下

other:可配置埠號等

 

* 使用SeleniumHQ htmlSuite Run配置時還需配置全域性配置

進入系統管理->系統設定

*該jar包是用來啟動selenium的

 

增加構建步驟方式二:使用batch command

 

set datetime=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%

java -jar E:\jenkins\workspace\selenium-server-standalone-2.47.1.jar -htmlSuite “*firefox” “http://localhost:8080/” “E:\Jenkins\workspace\test1\Test_script\login-suite.html” “E:\Jenkins\workspace\test1\%datetime%.html”

上述程式碼的主要功能為啟動selenium,並且建立一個以當前日期時間為名的HTML檔案,並將結果複製到該檔案中。

* 需注意路徑中不能出現空格,如需要出現空格,必須將路徑用”“包含

* 估計所有的Windows機器都使用同一個jar,需驗證

最後一步,點選構建。

Selenium IDE 的用法可以參考網上的《selenium中文使用手冊》

這篇好像有點傻瓜教程!