測開新手:從0到1,自動化測試接入Jenkins學習


大家好,我叫董鑫,一個在測試開發道路上的新手,之前一直從事手工功能測試,前段時間抽空又溫習了一遍老師全棧測開訓練營中自動化測試、CICD的知識,最近公司正好有一個項目可以實踐練手,趁熱打鐵,將自動化測試腳本接入到Jenkins中,在這里做個簡單分享,同時也是自我的小結。若有不對的地方,還請各位同行,同學,老師及時指正。

1. 背景

本地實現了自動化腳本之后,公司需要統一管理和定時構建執行。所以接到了使用Jenkins來做持續集成管理的任務。下面開始我一步步構建的過程。

當時公司運維的同學已經搭建了jenkins的環境,我們從創建job開始。

1.1 創建job

點擊“新建Item”

輸入名稱(建議不要帶“+”這類的字符),選擇自由風格的類型(紅框標注的),點擊確定。

填寫一般信息,這里我只用到了保存構建天數和構建最大個數。

增加構建步驟,由於我們是在windows系統上執行命令,所以選擇我選擇Execute Windows batch command。

命令框中輸入你要執行的指令,這里的指令就是你本地執行使用的指令。

點擊保存。這樣一個簡單的job就創建好了。可以點擊build now按鈕可以立刻開始構建。

這樣就結束了嗎?當然不是。領導提出我們的腳本需要使用公司的gitlab來管理,不可能手動復制過來。這樣我們的job就需要改造。

1.2 改造一:增加git能力

在創建的job中的源碼管理選擇git,填寫我們自動化腳本的倉庫地址,以及拉取的賬號密碼信息和分支名稱。如下面顯示:

每次寫完腳本提交到倉庫,然后在Jenkins上點擊構建,這樣就可以自動去拉取最新代碼下來執行測試了。

這樣改造之后擁有了git的能力,那我們也需要想想,這樣持續集成之后領導想要看到什么,最起碼需要直接看到測試結果和報告吧,所有還需要接着改造,加入報告的能力。

1.3 改造二:加入直接查看報告的能力

在本地執行時,我們是allure可執行文件來生成報告,那集成到Jenkins,我們需要先安裝allure的插件

  1. 在插件管理中搜索alluer插件進行安裝

  1. 在全局工具中配置allure相關

然后繼續改造job,在構建后的操作中添加allure報告的信息。

這樣之后,我們就可以在構建后,在Jenkins上直接查看執行后的報告了。

這樣使用之后,感覺還是差點東西,差什么呢,因為用例很多,每次構建的時間都很長,這就導致我無法知道什么時候結束,來第一時間查看結果並反饋執行情況。所以我們還需要繼續改造,加入通知的能力。

1.4 改造三:增加通知的能力

在和項目組溝通后,確定了兩種方式的通知,企業微信通知郵件通知。

研究一番之后,發現,Jenkins使用插件來實現企業微信通知,只能顯示少量的信息(如:開始時間),並不能達到我們想的顯示大致的執行結果的能力,所以這部分,我就直接使用python腳本來實現了,不使用Jenkins。

這里就不做詳細說明了,大致的思路是:解析執行生成的xml文件來獲取執行結果信息,然后按照企業微信機器人的方式來通知。附上一張我調試的效果圖:

雖然企業微信通知沒有使用Jenkins,但是郵件的通知,Jenkins還是很好用的,我們用Jenkins來進行郵件的通知發送,接着改造job。

在構建后的操作中添加Editable Email Notfication,填寫發送郵件的信息。

這樣改造之后,我們也擁有了通知的能力。

這時候領導又提要求了,現在想晚上使用腳本來巡檢,早上查看結果。這樣不可能每天晚上登錄Jenkins來構建,所以我們需要繼續改造,加入定時構建的能力。

1.5 改造四:增加定時構建

在job的構建觸發器中選擇Build periodically

H 2 * * 1,2,3,4,5表示周一到周五每天凌晨2點左右開始構建,填寫后,可以查看到下面顯示的下次構建的時間

這樣改造之后,每天晚上就自動構建了。

到這里我們就擁有了git,查看報告,郵件通知,定時構建的能力。

這個時候運維的小伙伴又提要求了,給我們自動化測試分配了一台服務器,讓我們在那台設備上測試,不想和開發發布的混在一起。

1.6 改造五:指定節點運行

我們需要在指定節點構建,通過Jenkins來調度。這樣我還需要接着改造了。

1. 添加節點

進入系統管理(configuer system)》管理節點(manage nodes and clouds),點擊新增節點。

注意:節點的標簽不要用中文

再配置節點屬性和工具

如果啟動方式沒有上方選擇的選項,需要到全局安全配置中勾選如圖的地方:

2. 連接節點

新增的節點是沒有連接Jenkins服務的,需要啟動一個agent來主動連接到服務。

按照如下步驟來操作:

到從節點(執行機)上登錄Jenkins,點擊剛剛添加的節點中,會如下圖顯示

點擊紅框標記的圖標,會下載下來一個文件

雙擊打開下載的文件,會顯示一個小窗口,自動連接(需要jdk環境)

連接后會添加到執行機的服務中運行,之后不用再操作。

注意:如果連接提示失敗,可能是端口沒有開放,配置時選擇的隨機生成端口,如果連接提示端口沒有打開,將Jenkins所在的服務器上剛使用的端口打開即可。

  1. 改造job,配置使用執行的節點

在一般信息中勾選限制項目的運行節點,填寫我們添加的節點的標簽。

到此,我們的job改造就全部完成了。

2. 總結

通過以上操作,就完成了自動化測試使用jenkins來構建管理。從接到任務到一步步搭建完成,中間也遇到了很多坑,通過老師課程的學習以及指導,最終完成了搭建。

有幸得到這次機會將自己的經歷分享出來,也給自己做了一次總結。這次理論與實踐的結合也讓我對Jenkins的使用有了更加深刻的理解。當然這只是一次小小的實踐,還有很多要學習的。在測試進階的道路上,不斷的知識儲備才是最重要的。


免責聲明!

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



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