本次在windows版本中進行研究
書寫本文目的是為了跟我一樣的小白們少走一些彎路,把我現(xiàn)在摸索出來的正確打開方式總結(jié)一下痕慢,望共勉,此外里面內(nèi)容還有好多我不太懂的地方還請路過的大神們多多提出寶貴意見,3Q柳洋!
-
首先了解下什么是接口測試:
一警检、什么是接口測試孙援?
接口測試是測試系統(tǒng)組件間接口的一種測試。接口測試主要用于檢測外部系統(tǒng)與系統(tǒng)之間以及內(nèi)部各個子系統(tǒng)之間的交互點扇雕。測試的重點是要檢查數(shù)據(jù)的交換拓售,傳遞和控制管理過程,以及系統(tǒng)間的相互邏輯依賴關(guān)系等镶奉。
接口測試適用于為其他系統(tǒng)提供服務(wù)的底層框架系統(tǒng)和中心服務(wù)系統(tǒng)础淤,主要測試這些系統(tǒng)對外部提供的接口,驗證其正確性和穩(wěn)定性哨苛。接口測試同樣適用于一個上層系統(tǒng)中的服務(wù)層接口鸽凶,越往上層,其測試的難度越大建峭。
接口測試實施在多系統(tǒng)多平臺的構(gòu)架下吱瘩,有著極為高效的成本收益比,接口測試天生為高復(fù)雜性的平臺帶來高效的缺陷監(jiān)測和質(zhì)量監(jiān)督能力迹缀。平臺越復(fù)雜使碾,系統(tǒng)越龐大蜜徽,接口測試的效果越明顯。
基于接口測試的重要性票摇,以及它比較容易自動化的特性拘鞋,通過持續(xù)集成的接口監(jiān)控能夠及時的發(fā)現(xiàn)項目中存在的問題,這對持續(xù)運營的項目來說矢门,非常重要盆色。
二、接口測試的流程
1祟剔、 項目啟動后隔躲,測試人員要盡早找到開發(fā)人員拿到接口測試文檔
2、 獲取接口測試文檔后物延,就可以進行接口用例的編寫和調(diào)試
3宣旱、 接口用例編寫調(diào)試完成后,部署到持續(xù)集成的測試環(huán)境中叛薯,
4浑吟、 設(shè)定腳本運行頻率,告警方式等基本參數(shù)耗溜,進行接口的日常監(jiān)控
5组力、 每日進行接口腳本的維護更新,接口異常的處理
-
然后準(zhǔn)備好測試腳本
- 那個不知道jmeter怎么用的可以先學(xué)習(xí)一下jmeter的 基本用法
- 這里我提前準(zhǔn)備好了一個jmx文件(提取碼:a446)
- 這里是我們使用非 GUI 模式運行測試腳本時可以使用的一些命令:
-h 幫助 -> 打印出有用的信息并退出
-n 非 GUI 模式 -> 在非 GUI 模式下運行 JMeter
-t 測試文件 -> 要運行的 JMeter 測試腳本文件
-l 日志文件 -> 記錄結(jié)果的文件
-r 遠(yuǎn)程執(zhí)行 -> 啟動遠(yuǎn)程服務(wù)
-H 代理主機 -> 設(shè)置 JMeter 使用的代理主機
-P 代理端口 -> 設(shè)置 JMeter 使用的代理主機的端口號
例如:
jmeter -n -t test.jmx -l logfile1.jtl -H 192.168.1.1 -P 8080
其中可以給jmx文件指定路徑抖拴,也可以給輸入日志文件指定輸出路徑
如果要在windows機器上執(zhí)行這個命令行燎字,有兩
第一種方法:通過cmd 進入到 *\apache-jmeter-2.13\bin(也就是jmeter所在的目錄)中執(zhí)行
第二種方法:通過給jmeter配置環(huán)境變量,
1. JMETER_HOME:E:\workplace-jenkins\apache-jmeter-2.13\bin
2. PATH: %JMETER_HOME%bin
3. CLASS_PATH: %JMETER_HOME%lib
注:這里有的時候用%JMETER_HOME%不好用阿宅,可以換成絕對路徑候衍;如果用第二種方法配置以后,則在任何路徑下都可以執(zhí)行jmeter命令了家夺,我比較推薦這個;在這里最好能實現(xiàn)通過命令行執(zhí)行jmx以后再往下進行-
Jenkins for windows 的安裝
- 首先需要下載Jenkins的安裝包,或者根據(jù)自己需要Jenkins官網(wǎng)下載
-
下載好windows版以后伐弹,直接解壓打開msi
安裝包.png - 安裝的過程中選擇好路徑拉馋,然后就是傻瓜式的下一步,完成后會自動打開Jenkins的網(wǎng)站:
http://localhost:8080
即${安裝機器的ip}:8080 - 首次進入會有個密碼惨好,根據(jù)紅色提示信息 煌茴,復(fù)制到 在文件管理器中找到密碼
- 選擇推薦插件就行,運氣好能少失敗幾個日川,然后就等著吧 蔓腐,等到進度條到頭的時候(這時候Jenkins不一直在那不動,我也不知道為啥龄句,歡迎指教)回论,可以手動刷新頁面再次進入Jenkins散罕,選擇continue就可以
可以先去修改個密碼省的下次登錄還得找 “系統(tǒng)管理->管理用戶”
-
安裝好了以后還需要準(zhǔn)備一個build.xml文件
直接手動建立一個build.xml文件放在你認(rèn)為合適的地方,因為一會建job還要用呢傀蓉!
<?xml version="1.0" encoding="utf-8"?>
<project name="JmeterTest" default="all" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddhhmm" />
</tstamp>
<!-- 需要改成自己本地的 Jmeter 目錄-->
<property name="jmeter.home" value="E:\workplace-jenkins\apache-jmeter-2.13\" />
<!-- jmeter生成jtl格式的結(jié)果報告的路徑-->
<property name="jmeter.result.jtl.dir" value="E:\workplace-jenkins\jmeter-restult\jtl" />
<!-- jmeter生成html格式的結(jié)果報告的路徑-->
<property name="jmeter.result.html.dir" value="E:\workplace-jenkins\jmeter-restult\html" />
<!-- 生成的報告的前綴 -->
<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}${time}.html" />
<!-- 接收測試報告的郵箱 -->
<property name="mail_to" value="XX@gmail.com" />
<!-- 電腦地址 -->
<property name="ComputerName" value="andre" />
<target name="all">
<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}">
<!-- 聲明要運行的腳本欧漱。"*.jmx"指包含此目錄下的所有jmeter腳本 -->
<testplans dir="E:\workplace-jenkins\test_case" includes="*.jmx" />
</jmeter>
</target>
<target name="report">
<xslt in="${jmeter.result.jtlName}" out="${jmeter.result.htmlName}" style="${jmeter.home}/extras/jmeter.results.shanhe.me.xsl" />
<!-- 因為上面生成報告的時候,不會將相關(guān)的圖片也一起拷貝至目標(biāo)目錄葬燎,所以误甚,需要手動拷貝 -->
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
<!-- 發(fā)送郵件 -->
</project>
查閱了大量的文章,寫法都差不多谱净,但是我還不能自己優(yōu)化窑邦,故直接拿來,記錄下待他日有深刻體會時再次修改壕探,特別說明一個地方:${jmeter.home}/extras/jmeter.results.shanhe.me.xsl這個是我下載的一個第三方模板(提取碼:d982)冈钦,有興趣你也可以下個試試,不過jmter自帶了4個模板
-
準(zhǔn)備差不多了浩蓉,現(xiàn)在就建個job體驗一下
然后:
別的不用管直接到增加構(gòu)建步驟:
添加參數(shù):
Targets:參數(shù)你研究一下build.xml文件就知道了
build file : build.xml路徑
點擊保存即可派继。
然后點擊構(gòu)建,我這里成功了捻艳。
還可以去看一下生成的報告:
-
到現(xiàn)在為止一個Jenkins+jmeter+ant自動化的框架基本搭建完事了驾窟,剩下的就是看你怎樣發(fā)揮你的想象力去創(chuàng)造了,后續(xù)還會更新一些創(chuàng)建report认轨,以及發(fā)送報警郵件等等的其它功能绅络,待續(xù)!