由於用到了jmeter和apache-tomcat,centos7必需要有java環境,因此配置jdk和apache-tomcat什麼的,就很少說了,自行操做html
幫大家偷懶:java
ant下載地址:http://mirrors.hust.edu.cn/apache//ant/binaries/apache-ant-1.10.3-bin.tar.gzgit
jmeter下載地址:http://mirror.bit.edu.cn/apache//jmeter/binaries/apache-jmeter-4.0.tgzgithub
jenkins war包下載地址:https://mirrors.tuna.tsinghua.edu.cn/jenkins/war/latest/jenkins.warweb
javamail.jar下載地址:https://github.com/javaee/javamail/releasesexpress
commons-email.jar下載地址:http://central.maven.org/maven2/org/apache/commons/commons-email/1.5/commons-email-1.5.jarapache
activation.jar下載地址:http://central.maven.org/maven2/javax/activation/activation/1.1.1/activation-1.1.1.jarwindows
若是軟件是下載到windows的,能夠經過xftp、winscp等工具上傳到centos7,我上傳到/home目錄下的。centos
進入到home目錄,並解壓ant壓縮包瀏覽器
[root@localhost /]# cd /home/
[root@localhost home]# tar -zxvf apache-ant-1.10.3-bin.tar.gz
打開配置文件
[root@localhost home]# vi /etc/profile
在文件最後添加ant環境 ,並把ant環境添加到path中(「$ANT_HOME/bin:」)
export ANT_HOME=/home/apache-ant-1.10.3
export PATH=$JAVA_HOME/bin:$ANT_HOME/bin:$PATH
保存退出
:wq
強制更新配置文件
[root@localhost home]# source /etc/profile
驗證配置是否正確
[root@localhost home]# ant -version
若是出現這種,就說明配置成功
Apache Ant(TM) version 1.10.3 compiled on March 24 2018
首先解壓jmeter壓縮包
[root@localhost home]# tar -zxvf apache-jmeter-4.0.tgz
將/apache-jmeter-4.0/extras下面的ant-jmeter-1.1.1的jar包到ant的lib目錄
[root@localhost home]# cp /home/apache-jmeter-4.0/extras/ant-jmeter-1.1.1.jar /home/apache-ant-1.10.3/lib/
進入/apache-jmeter-4.0/並新建一個文件夾work
[root@localhost home]# cd /home/apache-jmeter-4.0/
[root@localhost apache-jmeter-4.0]# mkdir work
修改文件夾work的權限
[root@localhost apache-jmeter-4.0]# chmod 777 work
進入work目錄,新建一個report文件夾,用來保存報告
[root@localhost apache-jmeter-4.0]# cd work/
[root@localhost work]# mkdir report
[root@localhost work]# chmod 777 report
新建build.xml文件
將下面的內容拷貝進build.xml裏面,jmeter目錄和郵件參數等須要自行修改
<?xml version="1.0" encoding="UTF-8"?> <!-- 此文檔爲ant+jmter自動化測試及發送郵件的配置文件 --> <project name="ant-jmeter-test" default="run" basedir="."> <tstamp> <format property="datestamp" pattern="yyyy/MM/dd HH:mm" /> </tstamp> <!-- 須要改爲本身本地的 Jmeter 目錄--> <property name="jmeter.home" value="/home/apache-jmeter-4.0" /> <!-- 本地項目工程目錄--> <property name="location" value="/home/apache-jmeter-4.0/work"/> <property name="report.title" value="接口測試"/> <!-- jmeter生成jtl格式的結果報告的路徑--> <property name="jmeter.result.jtl.dir" value="${location}/report" /> <!-- jmeter生成html格式的結果報告的路徑--> <property name="jmeter.result.html.dir" value="${location}/report" /> <!-- jmeter生成csv格式的結果報告的路徑--> <property name="jmeter.result.csv.dir" value="${location}/report" /> <!-- 生成的報告的前綴--> <property name="ReportName" value="TestReport" /> <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}.jtl" /> <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}.html" /> <property name="jmeter.result.csvName" value="${jmeter.result.csv.dir}/${ReportName}.csv" /> <target name="run"> <antcall target="test" /> <antcall target="report" /> <antcall target="sendEmail" /> </target> <target name="test"> <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" /> <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}"> <!-- 聲明要運行的腳本"*.jmx"指包含此目錄下的全部jmeter腳本--> <testplans dir="${location}" includes="*.jmx" /> <property name="jmeter.save.saveservice.assertion_results" value="run"/> <property name="jmeter.save.saveservice.output_format" value="xml"/> </jmeter> </target> <path id="xslt.classpath"> <fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/> <fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/> </path> <target name="report"> <xslt classpathref="xslt.classpath" force="true" in="${jmeter.result.jtlName}" out="${jmeter.result.htmlName}" style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl"> <param name="dateReport" expression="${datestamp}"/> </xslt> <!-- 由於上面生成報告的時候,不會將相關的圖片也一塊兒拷貝至目標目錄,因此,須要手動拷貝 --> <copy todir="${jmeter.result.html.dir}"> <fileset dir="${jmeter.home}/extras"> <include name="collapse.png" /> <include name="expand.png" /> </fileset> </copy> </target> <target name="sendEmail"> <mail mailhost="smtp.163.com" mailport="25" user="發件人郵箱" password="發件人郵箱的smtp受權碼" ssl="false" from="發件人郵箱" subject="郵件主題" messagemimetype="text/html" tolist="收件人,多個收件人用逗號隔開"> <fileset dir="${location}/report"> <include name="${ReportName}.html"/> <include name="*.png"/> </fileset> <message charset="gb2312">郵件正文</message> </mail> </target> </project>
修改好後,保存
:wq
修改jmeter的bin目錄下的jmeter.properties文件的配置
在vi頁面輸入/output,回車
將csv改爲xml,並將前面的註釋去掉
esc後保存文檔
:wq
用工具將本地的3個jar包上傳到ant的lib文件夾下,將本地的jmx文件上傳到/home/apache-jmeter-4.0/work目錄下
進入/home/apache-jmeter-4.0/work
輸入ant,若是出現如下代碼,則表明成功。若是失敗,則檢查jar包位置是否正確,或者郵件參數是否配置正確。
將jenkins的war包用工具上傳到/apache-tomcat-9.0.7/webapps/目錄下
在本地打開瀏覽器,在瀏覽器輸入http://centos7的IP:8080/jenkins,便可進行安裝
若是報錯,需檢查tomcat是否運行,centos7防火牆是否關閉,或者端口是否在防火牆白名單,具體操做,就很少說,自行操做
安裝成功後,註冊,登陸
進入系統管理-全局工具配置頁面,配置jdk和ant,輸入centos7 的環境配置後,點擊apply,而後點擊save。
注意:別名最好帶上版本號,避免出錯;Home路徑,最好不要包含空格,避免報錯(我編譯失敗了10屢次,弄了一下午,才發現是全局環境沒有配置- -!)
點擊新建任務,在打開的頁面點擊第一個軟件項目,輸入任務名稱,而後點擊肯定
配置構建觸發器
第一個參數表明的是分鐘 minute,取值 0~59;
第二個參數表明的是小時 hour,取值 0~23;
第三個參數表明的是天 day,取值 1~31;
第四個參數表明的是月 month,取值 1~12;
最後一個參數表明的是星期 week,取值 0~7,0 和 7 都是表示星期天 特殊格式;
* 指全部有效的值;M-N 指定值的範圍 ;M-N/ X 或*/ X 是指以X 爲步長,指定的區域或整個有效範圍區間的值 A,B,...,Z
列舉多個值 eg.
H/15 * * * * 每十五分鐘執行一次 H(0-29)/10 * * * * 每小時的0-29 份內每隔十分鐘執行一次
H 9-16/2 * * 1-5 每一個工做日的9-16 點內每隔兩小時執行一次
H H 1,15 1-11 * 1-11 月的每個月1號和15 號各執行一次
配置構建環境,勾選with Ant,從下拉列表選擇ant和jdk的版本
配置構建,從下拉列表選擇ant的版本,在buil file欄輸入build.xml文件的絕對路徑,如/home/apache-jmeter-4.0/work/build.xml
而後點擊應用,點擊保存,
在主頁,點擊項目後的圖標,便可開始構建
ps:附上報了一下午的錯誤。。。。
jenkins配置jdk環境,多了一個空格致使失敗。。。。