Jenkins+Jmeter+Ant自動化持續集成環境搭建

【前言】

今天讓咱們先把準備工做作好 >> 搭建環境!html

【正文】

JDK+Jmeter安裝教程:

參考博客:http://www.javashuo.com/article/p-hlylhosx-eq.htmlweb

Ant安裝教程:

1.官網下載:http://ant.apache.org/bindownload.cgiapache

 

2.下載後獲得的是一個的壓縮包,將其解壓到你指定的文件夾便可,例如本人的路徑爲:D:\ant\apache-ant-1.9.11瀏覽器

配置Ant的環境變量:打開控制面板–>系統和安全–>系統–>高級系統設置–>高級–>環境變量tomcat

系統變量名 變量值
ANT_HOME D:\ant\apache-ant-1.9.11;(你ant解壓的目錄路徑)
path D:\ant\apache-ant-1.9.11/lib;
classpath D:\ant\apache-ant-1.9.11/bin;

釋:新建系統變量:ANT_HOME,填入變量值:D:\ant\apache-ant-1.9.11(你ant解壓的目錄路徑)安全

  編輯path,在末尾添加變量值:D:\ant\apache-ant-1.9.11/lib;(你ant解壓的目錄路徑)服務器

  編輯classpath,在末尾添加變量值:D:\ant\apache-ant-1.9.11/bin;(你ant解壓的目錄路徑)app

注:有些小夥伴會用相對路徑配置環境變量,例:%ANT_HOME%;樓主使用過,可是用命令行檢索時,檢索不出正確安裝的顯示結果,因此建議仍是使用絕對路徑webapp

打開命令行,輸入:ant -version測試

【見到圖中顯示結果說明ant安裝成功!由於ant默認運行build.xml文件,這個文件須要咱們創建 <build文件我會在下面說明>】 

 

 查看版本:ant -version 

 

3.本地調試使用ant構建運行Jmeter,而且生成jtl、Html報告:

(1)jmeter默認保存的是.csv格式的文件,因此咱們先要設置一下bin/jmeter.properties文件內容,修改jmeter.properties文件 jmeter.save.saveservice.output_format=xml.

(2)將apache-jmeter-3.2\extras\ant-jmeter-1.1.1.jar拷貝到apache-ant-1.9.11\lib目錄下.

(3)在\apache-jmeter-3.2\extras目錄下打開CMD,運行"ant.bat -file build.xml -Dtest=Test" . 查看\apache-jmeter-3.\extras目錄下是否出現Test.jtl、Test.html文件,如有,則構建成功。注意:Test.jmx是默認存在的Sample腳本文件.

(4)若構建失敗,請分析cmd打印的日誌消息,定位問題.

 

build文件(手動新建):

 

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project name="ant-jmeter-test" default="all" basedir=".">  
 3     <tstamp>  
 4         <format property="time" pattern="yyyyMMddhhmm" />  
 5     </tstamp>  
 6     <!-- 須要改爲本身本地的 Jmeter 目錄-->  
 7     <property name="jmeter.home" value="C:\Program Files (x86)\apache-jmeter-3.2" />  
 8     <!-- jmeter生成jtl格式的結果報告的路徑-->  
 9     <property name="jmeter.result.jtl.dir" value="D:\jmeterTest\resultLog\jtl" />  
10     <!-- jmeter生成html格式的結果報告的路徑-->  
11     <property name="jmeter.result.html.dir" value="D:\jmeterTest\resultLog\html" />  
12     <!-- 生成的報告的前綴-->  
13     <property name="ReportName" value="TestReport" />  
14     <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" />  
15     <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}${time}.html" />  
16       
17     <target name="all">  
18         <antcall target="test" />  
19         <antcall target="report" />  
20     </target>  
21       
22     <target name="test">  
23         <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />  
24         <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">  
25             <!-- 聲明要運行的腳本。"*.jmx"指包含此目錄下的全部jmeter腳本-->  
26             <testplans dir="D:\jmeterTest\testscript" includes="*.jmx" />  
27             
28             <property name="jmeter.save.saveservice.output_format" value="xml"/>
29             
30         </jmeter>  
31     </target>  
32     
33     <target name="report">  
34         <xslt in="${jmeter.result.jtlName}"  
35               out="${jmeter.result.htmlName}"  
36               style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl" />  
37           
38         <!-- 由於上面生成報告的時候,不會將相關的圖片也一塊兒拷貝至目標目錄,因此,須要手動拷貝 -->  
39         <copy todir="${jmeter.result.html.dir}">  
40             <fileset dir="${jmeter.home}/extras">  
41                 <include name="collapse.png" />  
42                 <include name="expand.png" />  
43             </fileset>  
44         </copy>  
45     </target>  
46 </project>  

 

Jenkins安裝教程:

1.配置配置Tomcat環境 

tomcat 是針對 Java 的一個開源中間件服務器(容器),基於 Java Web 的項目須要藉助 tomcat 才能運行起來

(1)下載Tomcat選擇合適的版本 

Tomcat官方網站: http://tomcat.apache.org/ 

(2)解壓此文件,對下載的壓縮包進行解壓,目錄結構以下:

啓動和關閉Tomcat服務:

點擊startup.bat,運行成功,咱們經過localhost:8080能夠訪問到tomcat主頁,8080爲默認端口,根據實踐狀況添加端口

 

2.配置Jenkins環境 
(1)下載Jenkins 
官方網站:http://jenkins-ci.org/ 

(2)安裝Jenkins

點擊安裝程序,直接點擊next 咱們直接將其安裝到 tomcat 的 webapps\jenkins目錄下。 

例:D:\apache-tomcat-8.5.31\webapps\jenkins

(3)運行Jenkins 

 進入 tomcat 的 bin/目錄下啓動 startup.bat :

經過瀏覽器訪問:http://localhost:8080/,獲得:

(樓主這是有註冊了賬號顯示的界面,若是第一次登錄的用戶參考下建立步驟:https://jingyan.baidu.com/article/cbcede077f62bf02f40b4de2.html

到這裏整套環境就搭建完成了,能夠自行構建測試是否達到預期.

 

遇到的問題:

 1.若是在運行過程當中這個問題:

report:
     [xslt] Processing D:\Tools\apache-jmeter-2.13\demo\report\jtl\TestReport201805300923.jtl to D:\Tools\apache-jmeter-2.13\demo\report\html\TestReport201805300923.html [xslt] Loading stylesheet D:\Tools\apache-jmeter-2.13\extras\jmeter-results-detail-report_21.xsl [xslt] : Error! 前言中不容許有內容。 [xslt] : Error! com.sun.org.apache.xml.internal.utils.WrappedRuntimeException: 前言中不容許有內容。 [xslt] Failed to process D:\Tools\apache-jmeter-2.13\demo\report\jtl\TestReport201805300923.jtl

解決辦法:在build.xml文件的jmeter標籤中添加這麼一句話:

<property name="jmeter.save.saveservice.output_format" value="xml"/>

2.測試報告中三個指標爲NaN

解決辦法:須要從Jmeter的lib包裏把xalan-2.7.2.jar和serializer-2.7.2.jar copy到Ant的lib包裏

3.taskdef class org.programmerplanet.ant.taskdefs.jmeter.JMeterTask cannot be found using the classloader AntClassLoader[]

解決辦法:將JMeter所在目錄下的extras子目錄裏面的ant-JMeter-1.1.1.jar複製到Ant所在目錄lib子目錄下

相關文章
相關標籤/搜索