一、前言
之前學習了很多自動化測試框架,但是寫的腳本都是本地執行,多數用來造數據。最近公司掀起一股自動化測試的風,所以就想研究下如何集成jenkins,本次采用pytest,用的是阿里雲服務器centos7。
二、服務器環境准備工作
以下安裝內容,之前的博客有提過,百度一下也可以找到大量參考資料,本次就不再細說安裝步驟,主要講述下每個工具在本次集成工作中所扮演的角色。
1、安裝jdk
因為jenkins基於java編寫的,所以需要jdk環境,故要先安裝jdk
2、安裝jenkins
Jenkins是一個開源軟件項目,是基於Java開發的一種持續集成工具,用於監控持續重復的工作,旨在提供一個開放易用的軟件平台,使軟件項目可以進行持續集成。借助jenkins,我們可以結合 Git/SVN 自動拉取代碼,可以設置定時構建,接着就可以定時觸發執行腳本,得到並查看測試報告,最后還可以配置發送郵件等。
安裝完成后,打開瀏覽器訪問jenkins地址,可以正常進入jenkins說明安裝成功,具體的配置步驟下面再提及。
3、安裝git
是一個開源的分布式版本控制系統,可以有效、高速地處理從很小到非常大的項目版本管理,說白了就是存放代碼的工具。本次演示代碼是存放到git上,所以jenkins想要拉取到git代碼的話,所在服務器就需要安裝git(yum -y install git)
4、安裝python
jenkins執行python腳本時需要有python環境
pytest安裝需要有pip工具
5、安裝pytest
jenkins配置的shell,本次用的是pytest執行,所以需要安裝pytest(pip install pytest)
三、jenkins自動執行python腳本
說的高大上一點就是,jenkins持續集成python項目,具體的配置步驟如下
1、jenkins創建job
登錄jenkins后,新建一個自由風格的項目
2、設置源碼管理
1)在源碼管理下,選擇git
2)Repository URL指代碼倉庫地址,復制Github倉庫的地址填入即可(我這里復制的是HTTPS)
注意:如果是SSH方式鏈接的,點右上角的SSH地址,使用SSH方式的話需要設置SSH Key
3)credentails如果沒有git賬戶可選,就點擊添加,自己創建一個賬戶(填寫git的登錄賬號密碼,用於拉取git代碼到服務器)
3、構建觸發器
這里H/3 * * * *
表示每三分鍾,Jenkins就會去檢查一下Git服務器代碼是否有變化,有的話就會觸發構建操作
4、構建
在這里,選擇shell,需要輸入執行命令,也就是說Jenkins將Git倉庫代碼下載之后,我們要怎么通過命令去執行腳本,這個根據自己執行腳本的情況填寫即可,這里和我們手工執行腳本的操作是一致的。
注:代碼拉到服務器后,可以用配置的命令直接在服務器shell執行下看是否可執行成功,如果可以的話,那說明配置到jenkins的也是沒問題的
5、構建job
上面設置完成之后,保存即可。回到工作台,進入任務模塊點擊立即構建,可以測試一下構建執行腳本是否正常。
以下截圖是jenkins定時構建記錄: