jenkins持續內建接口自動化測試
-
- 整體CI思路
- 在linux伺服器上搭建jenkins
-
- 準備工作
- 安裝java環境
- 安裝git環境
- 安裝maven環境
- 安裝tomcat
- 最後一步,安裝jenkins
- 建立一個自動化測試的任務
- 添加建構腳本
- centos安裝郵箱插件
在上一篇文章中已經安裝好了centos7系統,并且配置好了靜态ip*
附上位址:https://blog.csdn.net/tetsuki/article/details/99621984
整體CI思路
在linux伺服器上搭建jenkins
準備工作
1.本文以虛拟機為例,同學們有條件的可以從運維同學那直接搞一台伺服器
2.需要用到的安裝包
- apache-maven-3.6.1-bin.tar.gz
- apache-tomcat-9.0.21.tar.gz
- git-2.17.0
- jdk-8u144-linux-x64.rpm
- jenkins.war
-
windows和linux通信軟體 winscp
附上下載下傳位址,也可以自行官網下載下傳
https://pan.baidu.com/s/16Qj9LZu8m-PLLLwiZlrU2A
3.安裝完後,在linux根目錄上建立一個檔案夾叫workspace
mkdir /workspace
4.打開winscp軟體,輸入主機名,使用者名和密碼
點選登入
直接更新就好
連接配接成功
5.将windows上下載下傳好的4個jar包拷貝到centos的/workspace上
直接拖動就好,比較友善
安裝java環境
1、檢視java
java
java -version
rpm -qa|grep java
系統是新安裝的,非常幹淨,是以不需要解除安裝自帶的openjava了
2.安裝jdk
采用rpm安裝方式
cd到workspace目錄下
安裝指令:
rpm -ivh
cd /workspace
rpm -ivh jdk-8u144-linux-x64.rpm
jdk安裝成功
檢視jdk版本号
cd /usr/java/
版本号為jdk1.8.0_144
3.配置 jdk 環境變量
先安裝下vim
yum update vi
yum install vim
一路y到頭
經過漫長的等待終于安裝完畢。。。
編輯 etc 檔案夾下的 profile 檔案,在檔案尾部加入環境變量的定義
vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_144
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
:wq 儲存退出
4.驗證下配置
java
javac
java -version
安裝git環境
1.壓縮包解壓,指令為: tar -zxvf v2.17.0.tar.gz ;
解壓出一個git檔案夾
2.安裝編譯源碼所需依賴,指令為:
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
耐心等待安裝,出現提示輸入y即可;
3.安裝依賴時,yum自動安裝了Git,需要解除安裝舊版本Git,指令為: yum remove git 出現提示輸入y即可;
解除安裝掉自動安裝的1.8.3.1的git
解除安裝完成
4.進入解壓後的檔案夾,指令 cd git-2.17.0 ,然後執行編譯,指令為 make prefix=/usr/local/git all 耐心等待編譯即可;
5.安裝Git至/usr/local/git路徑,指令為 make prefix=/usr/local/git install ;
6.打開環境變量配置檔案,指令 vim /etc/profile ,在底部加上Git相關配置資訊:
PATH=$PATH:/usr/local/git/bin
7.生效配置檔案,指令 source /etc/profile
8.檢視git是否生效 git --version
至此,git配置完畢
安裝maven環境
1.解壓maven包,該jar包是編譯過的(帶bin的),直接解壓就可使用
tar vxf apache-maven-3.6.1-bin.tar.gz
2.移動maven檔案目錄
mv apache-maven-3.6.1 /usr/local/maven3
3.設定環境變量
vim /etc/profile
#maven
MAVEN_HOME=/usr/local/maven3
export MAVEN_HOME
export PATH= P A T H : {PATH}: PATH:{MAVEN_HOME}/bin
4.生效配置檔案,指令 source /etc/profile
5.運作mvn -v驗證maven是否安裝成功
至此,maven安裝完畢
安裝tomcat
1.解壓jar包
tar -xzvf apache-tomcat-9.0.21.tar.gz
2.移動tomcat至usr/local下(還是放到opt目錄下好點)
mv apache-tomcat-9.0.21 /usr/local/tomcat9
3.啟動tomcat
cd /usr/local/tomcat9/bin
./startup.sh
tomcat啟動成功,打開浏覽器,輸入http://192.168.126.130:8080/
至此,tomcat安裝完成
最後一步,安裝jenkins
1.将jenkins.war複制到tomcat的webapps
cp /workspace/jenkins.war /usr/local/tomcat9/webapps/
2.配置環境變量
vim /etc/profile
export JENKINS_HOME=/usr/local/tomcat9/webapps
3.通路jenkins
浏覽器輸入:http://192.168.126.130:8080/jenkins
成功進入jenkins安裝界面
進入對應目錄複制密碼
4.檢視tomcat日志
cd /usr/local/tomcat9/logs
tail -f catalina.out
5.安裝jenkins
直接選擇安裝推薦的軟體
經過漫長的等待之後,插件安裝完畢。。。
6.建立使用者
下一步
下一步
開始使用
至此,所有的環境初始化已經全部搞定,接下來要做的就是建立jenkins任務
建立一個自動化測試的任務
1.建立一個AutoTest的自由任務
2.源碼管理選擇git
輸入自己的Repository URL
http隻需添加賬号和密碼即可
添加git證書
輸入自己的git賬号和git密碼
點選添加
選擇對應的分支
添加建構腳本
#每次建構都使配置檔案重新生效
source /etc/profile
#如果程序存在就強制停止xx-SNAPSHOT.jar程序
pid=$(ps x | grep "xx-SNAPSHOT.jar" | grep -v grep | awk '{print $1}')
if [ -n "$pid" ];then
kill -9 $pid
fi
pwd
#工作目錄: /usr/local/tomcat9/webapps/workspace/AutoTest/test-output
echo "------開始maven打包-----"
mvn clean package
pwd
echo "-------------------------pwd-------------------------------"
\cp -r /usr/local/tomcat9/webapps/workspace/AutoTest/test-output/AutoTest.html /usr/local/tomcat9/webapps/report/
echo "------複制報告正常-----"
#cd target
#BUILD_ID=dontKillMe
#nohup java -jar gs-oa-1.0-SNAPSHOT.jar &
#mail -s '測試報告' [email protected] < /usr/local/tomcat9/webapps/report/report.text
建立report目錄存放報告檔案
mkdir /usr/local/tomcat9/webapps/report
建構一下試試
第一次建構maven需要下載下傳各種jar包,會比較久,經過漫長的等待後
建構成功後,檢視測試報告,在浏覽器輸入:http://192.168.126.130:8080/report/AutoTest.html
centos安裝郵箱插件
1.安裝sendmail
yum -y install sendmail
2.安裝mailx
3.建立報告檔案
cd /usr/local/tomcat9/webapps/report
vim report.txt
輸入以下内容:
ienkins建構成功
測試報告位址:http://192.168.126.130:8080/report/AutoTest.html
:wq儲存退出
4.配置郵箱,以網易郵箱為例
輸入授權碼zz123456
5.在centos配置郵箱
vim /etc/mail.rc
在末尾添加以下内容
set [email protected]
set smtp=smtp.163.com
set [email protected]
set smtp-auth-password=zz123456
set smtp-auth=login
儲存退出
6.發送郵件,進行測試
mail -s ‘測試報告’ [email protected] < /usr/local/tomcat9/webapps/report/report.txt
7.郵件發送成功,将建構腳本的郵件發送功能放開注釋
8.儲存後再次建構
建構成成,檢視郵件有沒有收到
郵件也能正常收到
至此整個持續內建到此結束
還可以做得優化點:
- 設定定時任務,每天自動建構測試任務
- 任務建構失敗發送建構失敗的郵件