1. 程式人生 > >Jmeter&Ant構建自動化測試平臺

Jmeter&Ant構建自動化測試平臺

網易 cmd命令 AMM 成功 bsp 分享圖片 報告 tle 文件復制

JMeter是一個軟件,使負載測試或業績為導向的業務(功能)測試不同的協議或技術。 Apache軟件基金會的Stefano Mazzocchi JMeter的最初的開發。他寫道:它主要對 Apache JServ

(現在稱為如Apache Tomcat項目)的性能進行測試。Apache後來重新設計JMeter 增強的圖形用戶界面和添加功能測試能力。Jmeter最初使用到性能測試,後來經過修改,可以對軟件的不 僅僅進行性能測試,還可以進行接口測試與功能,本文章在這裏要詳細介紹的就是,使用Jmeter測試一個產品的接口測試,並把Jmeter與ant,Jenkins結合起來,自動化的去執行,並且生成 給予html的測試報告。關於jmeter的其他詳細信息,建議看官方的文檔,解釋的比較詳細和權威。 jmeter下載地址為:http://jmeter.apache.org/download_jmeter.cgi,也可以到本人的百度網盤下載,下載地址為:http://pan.baidu.com/s/1kVjgAxx,下載完成後,解壓文件, 加壓後,到biin目錄下,點擊jmeter.bat啟動jmeter(如果是linux環境,給jmeter.sh可執行的權限,然後執行jmeter.sh就可以啟動jmeter),見啟動後的界面,見如下的截圖: 技術分享圖片
這裏已m.cyw.com為案例,測試網易郵箱登錄,彈出的接口,見創建後的項目(這裏重點介紹與ant,jenkins的整合,不詳細介紹jmeter的使用方法),見創建後的項目計劃截圖: 技術分享圖片 下來來看m.cyw.com為案例,跳轉到西安市的接口為:http://m.cyw.com/index.php?m=api&c=cookie&a=setcity,請求為post請求,具體見如下postman對該接口的請求截圖: 技術分享圖片 見如上,該接口在postman中調用,返回的json字符串,完善jmeter,見完善後的jmeter截圖以及附件: 技術分享圖片 在jmeter中,點擊run,可以看到執行的結果,見截圖: 技術分享圖片
依據結果中,可以看到執行的結果,是通過的,下來把jmeter與ant進行整合,實現自動化的執行,而不是每次執行,得打開jmeter的界面,點擊run去執行,ant的下載地址為: http://ant.apache.org/,下載後,在環境變量中配置ant,新建ANT_HOME,見截圖: 技術分享圖片 然後在path環境變量中加入%ANT_HOME%\bin,配置完成後,打開cmd命令提示符,輸入ant -v ,出現如下截圖,說明ant環境配置OK,見截圖: 技術分享圖片 想要實現jmeter使用ant去執行,需要做如下幾個操作: 1、修改jmeter配置文件jmeter.properties,把jmeter.save.saveservice.output_format=csv修改為jmeter.save.saveservice.output_format=xml,並 不要註釋,見截圖: 技術分享圖片
2、在jmeter的extras目錄下,把ant-jmeter-1.1.1.jar文件復制到ant的lib目錄下,見截圖; 技術分享圖片 3、在jmeter當前目錄下創建TestCase文件夾,並把wap.jmx復制到TestCase目錄下,見截圖: 技術分享圖片 4、編寫build.xml文件,ant執行時候,會使用到該文件,見build.xml文件的源碼: <?xml version="1.0" encoding="UTF8"?>

<project name="Jmeter-TestCase" default="run" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!--jmeter的目錄-->
<property name="jmeter.home" value="D:\git\cyw\cyw_jmeter\apache-jmeter-2.12" />
<property name="jmeter.result.jtl.dir" value="D:\git\cyw\cyw_jmeter\apache-jmeter-2.12\TestCaset\report\jtl" />
<property name="jmeter.result.html.dir" value="Q:\tools\apache-jmeter\test\report\html" />
<property name="ReportName" value="TestReport" />
<property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" />
<property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}${time}.html" />

<target name="run">
<antcall target="test" />
<antcall target="report" />
</target>

<target name="test">
<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
<jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
<testplans dir="D:\git\cyw\cyw_jmeter\apache-jmeter-2.12\TestCase" includes="wap.jmx" />
<property name="jmeter.save.saveservice.output_format" value="xml"/>
</jmeter>
</target>


<target name="report">
<xslt in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}" <!--jmeter的xml模板-->
style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl" />
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>

</project> 5、到D:\git\cyw\cyw_jmeter\apache-jmeter-2.12\TestCase目錄下,執行ant命令,就會執行接口測試用例,生成給予html的測試報告,見ant執行的命令: 技術分享圖片 技術分享圖片 從命令行中,可以看到執行已成功,到Report目錄下,可以看到生成的html與jtl,到html目錄下,可以看到html的報告,見截圖:
技術分享圖片 打開html,可以看到詳細的執行結果,見截圖: 技術分享圖片 OK,已生成想要的結果報告,特別說明,apache-jmeter-2.12\extras目錄下的xml文件可以自定義,你看到的html報告可能和我截圖的不一致,不過,你也可以根據自己的愛好修改xml文件。 Jenkins是一個持續集成的工具,下載地址為:https://jenkins.io/index.html,下載後,把jenkins.war放到tomcat的webapps目錄下,啟動tomcat,在瀏覽器訪問http://localhost:8080/jenkins, 新創建工程,可以把jmeter,ant,jenkins結合起來,實現接口自動化或者性能測試的自動化測試平臺,見jenmins截圖: 技術分享圖片在Jenkins點擊立即構建,就可以執行了。 OK,基本就介紹到這,如有任何疑問,可掃描關註本人的微信公眾平臺,或者加入本人的qq群,一起討論,共同進步,也可看本人寫的百度閱讀寫的自動化測試電子書,地址:http://yuedu.baidu.com/ebook/3c0077aaa32d7375a41780bb

Jmeter&Ant構建自動化測試平臺