ant+jmeter+jenkins搭建持續性能測試,接口測試平臺

一、Jmeter+ant做持續集成
1、首先我們默認Jmeter腳本已經錄製好了,並測試通過,存在(查詢模塊.jmx)腳本 
2、將JMeter所在目錄下extras子目錄裏的ant-JMeter-1.1.1.jar複製到Ant所在目錄lib子目錄之下,這樣Ant運行時才能找到"org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"這個類,從而成功觸發JMeter腳本      
3、jmeter默認保存的是.csv格式的文件,所以我們先要設置一下bin/jmeter.properties文件內容,保存

  jmeter.save.saveservice.output_format=xml

javax.mail-1.4.4 這個jar包放到ant 中的lib目錄裏,就可以用ant+jmeter做持續集成發送郵件。

新建build.xml文件,腳本文件,報告文件



[html] view plain copy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <project name="JmeterTest" default="all" basedir=".">  
  3.     <tstamp>  
  4.         <format property="time" pattern="yyyyMMddhhmm" />  
  5.     </tstamp>  
  6.     <!-- 需要改成自己本地的 Jmeter 目錄-->  
  7.     <property name="jmeter.home" value="D:\apache-jmeter-3.0 (1)\apache-jmeter-3.0" />  
  8.     <!-- jmeter生成jtl格式的結果報告的路徑-->  
  9.     <property name="jmeter.result.jtl.dir" value="D:\apache-jmeter-3.0 (1)\apache-jmeter-3.0\demo\report\jtl" />  
  10.     <!-- jmeter生成html格式的結果報告的路徑-->  
  11.     <property name="jmeter.result.html.dir" value="D:\apache-jmeter-3.0 (1)\apache-jmeter-3.0\demo\report\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.     <property name="mail_to" value="[email protected]" />  
  18.     <!-- 電腦地址 -->  
  19.     <property name="ComputerName" value="Yyj" />  
  20.     <target name="all">  
  21.         <antcall target="test" />  
  22.         <antcall target="report" />  
  23.     <antcall target="sendmail" />  
  24.     </target>  
  25.     <target name="test">  
  26.         <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />  
  27.         <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">  
  28.             <!-- 聲明要運行的腳本。"*.jmx"指包含此目錄下的所有jmeter腳本 -->  
  29.             <testplans dir="D:\apache-jmeter-3.0 (1)\apache-jmeter-3.0\demo" includes="*.jmx" />  
  30.               
  31.             <property name="jmeter.save.saveservice.output_format" value="xml"/>  
  32.         </jmeter>  
  33.     </target>  
  34.       
  35.         
  36.       
  37.     <target name="report">  
  38.         <xslt   
  39.         in="${jmeter.result.jtlName}"   
  40.         out="${jmeter.result.htmlName}"   
  41.         style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl" />  
  42.         <!-- 因爲上面生成報告的時候,不會將相關的圖片也一起拷貝至目標目錄,所以,需要手動拷貝 -->  
  43.         <copy todir="${jmeter.result.html.dir}">  
  44.             <fileset dir="${jmeter.home}/extras">  
  45.                 <include name="collapse.png" />  
  46.                 <include name="expand.png" />  
  47.             </fileset>  
  48.         </copy>  
  49.     </target>  
  50.       
  51.     <!-- 發送郵件 -->  
  52.       
  53.     <target name="sendmail" >  
  54.         <mail mailhost="smtp.163.com"  
  55.             mailport="465"  
  56.             ssl="true"        
  57.             user="[email protected]"  
  58.             password="**********"  
  59.             subject="接口測試報告"  
  60.             from="[email protected]"  
  61.             >  
  62.             <to address="[email protected]"/>  
  63.             <message>詳細報告請查看附件</message>  
  64.               <attachments>  
  65.                 <fileset dir="${jmeter.result.html.dir}">   
  66.                   <include name="${ReportName}${time}.html"/>  
  67.                 </fileset>   
  68.               </attachments>  
  69.         </mail>  
  70.     </target>  
  71.       
  72.       
  73. </project>  




 一定要加這段,否則會報錯,第一行不能有文字 <property name="jmeter.save.saveservice.output_format" value="xml"/>

遇到的問題 jmeter3.0中沒有/extras/jmeter-results-detail-report_21.xsl,這個文件,從低版本中拷貝過來,就可以了。

jmeter-results-detail-report_21

jmeter-results-report_21

配置完成之後,cd到D:\apache-jmeter-3.0 (1)\apache-jmeter-3.0\demo目錄中,執行ant。ant+jmeter 持續集成,會直接發郵件到郵箱裏。報告就會在report文件夾中生成。



啓動jenkins,配置jenkins

1、新建一個自由風格的項目



舊的構建保存了你在一次構建中的所有臨時文件,如果構建沒有保留的必要,就勾選丟棄舊的構建,同時設置保持構建天使和保持構建的最大個數兩個參數。

注意:三個設置必須同時設置,否則無效


設置定時運行間隔,這裏,設置間隔時間爲15分鐘運行一次


設置invoke ant,完成後點擊保存



點擊立即構建,就可以調用ant,執行打包過程。在這裏,也就是執行生成測試報告的步驟


ant+jmeter+jenkins 本地搭建步驟

serverAgent 用那個這個上傳到被測服務器上,執行,可以監測到被測服務器cpu 內存 磁盤 使用情況

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章