日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

JMeter是Apache組織的開放源代碼項(xiàng)目,能做接口測(cè)試、功能測(cè)試和性能測(cè)試。它能夠?qū)TTP和FTP服務(wù)器進(jìn)行壓力和性能測(cè)試,也可以對(duì)數(shù)據(jù)庫進(jìn)行同樣的測(cè)試(通過JDBC),還能以多種形式展現(xiàn)測(cè)試結(jié)果。

然而,在使用JMeter進(jìn)行測(cè)試過程中,不可避免遇到兩個(gè)痛點(diǎn):"運(yùn)行測(cè)試腳本"和"生成測(cè)試報(bào)告"。前者主要是需要不斷重復(fù)運(yùn)行腳本,且當(dāng)腳本數(shù)量較多或進(jìn)行并發(fā)測(cè)試時(shí),JMeter GUI界面容易宕機(jī)、卡死等,這種情況下就需要重復(fù)使用命令執(zhí)行腳本;后者則是需要手工整理數(shù)據(jù)、分析測(cè)試結(jié)果然后生成測(cè)試報(bào)告。

接口測(cè)試很難嗎?學(xué)會(huì)JMeter+Ant接口自動(dòng)化搭建及實(shí)踐

 

因此,本文采用JMeter+Ant(一個(gè)將軟件編譯、測(cè)試、部署等步驟聯(lián)系在一起加以自動(dòng)化的工具)搭建自動(dòng)化測(cè)試環(huán)境,用以解決測(cè)試過程中的痛點(diǎn),通過此環(huán)境可以實(shí)現(xiàn):

(1)自動(dòng)重復(fù)運(yùn)行腳本(2)自動(dòng)生成測(cè)試報(bào)告(3)自動(dòng)發(fā)送郵件。

大體的邏輯如下:

1、配置build.xml文件,Ant通過XML文件進(jìn)行構(gòu)建,通過調(diào)用target就可以執(zhí)行各種task,每個(gè)task實(shí)現(xiàn)了特定接口對(duì)象。因此,通過Ant可以實(shí)現(xiàn)批量執(zhí)行。

2、Ant通過測(cè)試結(jié)果(jtl文件)構(gòu)建生成html測(cè)試報(bào)告,并輸出在指定路徑下,避免了手工整理測(cè)試報(bào)告。

3、根據(jù)build.xml文件中配置的的郵件信息,將HTML測(cè)試報(bào)告自動(dòng)發(fā)送到指定的郵箱。

JDK安裝

JMeter依賴JAVA環(huán)境,故需要先安裝JDK并配置好環(huán)境變量。

Java環(huán)境變量配置

1、創(chuàng)建JAVA_HOME(JDK安裝目錄)。如:C:Program Files (x86)Javajdk1.8.0_231

2、創(chuàng)建CLASSPATH,.;%JAVA_HOME%lib;%JAVA_HOME%libtools.jar(注意最前面有一點(diǎn))

3、編輯Path,把值放在最面?%JAVA_HOME%bin;%JAVA_HOME%jrebin;

驗(yàn)證JDK

CMD命令行輸入java -version,顯示如圖,表示安裝成功。

接口測(cè)試很難嗎?學(xué)會(huì)JMeter+Ant接口自動(dòng)化搭建及實(shí)踐

 

JMeter安裝

下載成功后,解壓縮到建立的文件夾路徑中(如:D:ApacheJMeter)。

JMeter環(huán)境變量配置

1、創(chuàng)建JMETER_HOME,填寫JMeter文件所屬路徑(如:D:ApacheJMeter)

2、修改CLASSPATH,添加;%JMETER_HOME%libextApacheJMeter_core.jar%JMETER_HOME%libjorphan.jar;%JMETER_HOME%liblogkit-1.2.jar;

3、修改Path,添加%JMETER_HOME%bin

點(diǎn)擊JMeter目錄下bin文件夾中的jmeter.bat就可以打開JMeter,具體界面如下:

接口測(cè)試很難嗎?學(xué)會(huì)JMeter+Ant接口自動(dòng)化搭建及實(shí)踐

 

添加常用插件

注:官網(wǎng)下載的JMeter不包含一些常用插件。

將plugins-manager-xxx.jar、JMeterPlugins-Extras.jar、JMeterPlugins-Standard.jar和JMeterPlugins-Standard-1.4.0.zip解壓后的jar包放入D:ApacheJMeter目錄下的libext目錄,重啟JMeter。

打開有如下頁面,則成功安裝。

接口測(cè)試很難嗎?學(xué)會(huì)JMeter+Ant接口自動(dòng)化搭建及實(shí)踐

 

JMeter相關(guān)配置修改

1、修改默認(rèn)語言和jvm參數(shù)(根據(jù)電腦配置進(jìn)行修改),編輯JMeter.bat如下:

接口測(cè)試很難嗎?學(xué)會(huì)JMeter+Ant接口自動(dòng)化搭建及實(shí)踐

 


接口測(cè)試很難嗎?學(xué)會(huì)JMeter+Ant接口自動(dòng)化搭建及實(shí)踐

 

2、編輯JMeter.peoperties使用第三方模塊生成詳細(xì)報(bào)告:

接口測(cè)試很難嗎?學(xué)會(huì)JMeter+Ant接口自動(dòng)化搭建及實(shí)踐

 

Ant安裝

下載成功后,解壓Ant壓縮包到建立的文件夾路徑(如:D:ApacheAnt)。

Ant環(huán)境變量配置

1、創(chuàng)建ANT_HOME,填寫Ant所屬路徑(如D:ApacheAnt?)

2、修改CLASSPATH,添加;%ANT_HOME%lib

3、修改Path,添加;%ANT_HOME%bin

驗(yàn)證Ant

CMD命令行輸入ant,如下圖所示表示安裝成功。

接口測(cè)試很難嗎?學(xué)會(huì)JMeter+Ant接口自動(dòng)化搭建及實(shí)踐

 

Ant配置及相關(guān)使用操作

1、將D:ApacheJMeterextras下面的ant-jmeter-1.1.1.jar包復(fù)制到D:ApacheAntlib目錄下。

2、將jmeter.results.shanhe.me.xsl和jmeter-results-detail-report_21.xsl分別放在D:ApacheJMeterextras目錄下。

3、(發(fā)送郵件所需jar包)下載activation-1.1.1.jar、commons-email-1.5.jar和javax.mail.jar放到D: Apacheantlib。

4、在本地任意創(chuàng)建目錄testcases(如:D:testcases),并在其目錄下創(chuàng)建report文件夾和build.xml文件,復(fù)制以下內(nèi)容到build.xml文件中:

<?xml version="1.0" encoding="UTF-8"?>

<project name="ant-jmeter-test" default="all" basedir=".">

<tstamp>

<format property="time" pattern="yyyyMMddhhmm" />

</tstamp>

<!-- 需要改成自己本地的 Jmeter 目錄 -->

<property name="jmeter.home" value="D:Apachejmeter" />

<property name="report.title" value="測(cè)試報(bào)告" />

<!-- jmeter生成jtl格式的結(jié)果報(bào)告的路徑 -->

<property name="jmeter.result.jtl.dir" value="D:testcasesreport" />

<!-- jmeter生成html格式的結(jié)果報(bào)告的路徑 -->

<property name="jmeter.result.html.dir" value="D:testcasesreport" />

<!-- zip文件路徑 -->

<property name="zip.dir" value="D:testcases" />

<!-- 生成的報(bào)告的前綴 -->

<property name="ReportName" value="testcases" />

<!-- 報(bào)告名稱 -->

<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" />

<property name="zipname" value="${zip.dir}/${ReportName}${time}.zip" />

<!-- 郵件配置信息 -->

<property name="mail_host" value="smtp.163.com" />

<property name="mail_port" value="465" />

<property name="username" value="[email protected]" />

<property name="password" value="123456789" />

<property name="mail_from" value="[email protected]" />

<property name="mail_to" value="[email protected],[email protected]" />

<property name="mailsubject" value="測(cè)試報(bào)告" />

<!-- 輸出生成的報(bào)告名稱和存放路徑 -->

<echo message="${jmeter.result.jtlName}" />

<echo message="${jmeter.result.htmlName}" />

<echo message="${jmeter.result.html.dir}" />

<echo message="${zip.dir}" />

<echo message="${zipname}" />

<!-- 加載jar包,解決時(shí)間顯示問題 -->

<path id="xslt.classpath">

<fileset dir="${jmeter.home}/lib" includes="xalan*.jar" />

<fileset dir="${jmeter.home}/lib" includes="serializer*.jar" />

</path>

<target name="all">

<antcall target="test" />

<antcall target="report" />

<antcall target="summary-report" />

<antcall target="zip" />

<!-- 打包zip -->

<antcall target="sendEmail" />

<!-- 發(fā)送郵件 -->

</target>

<target name="test">

<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />

<jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">

<!-- 聲明要運(yùn)行的腳本"*.jmx"指包含此目錄下的所有jmeter腳本 -->

<!-- 如果只想執(zhí)行部分腳本,可以寫多條testplans 將需要執(zhí)行的jmx寫在includes中 -->

<testplans dir="D:testcases" includes="*.jmx" />

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

<!-- 這里就是jmeter.properties修改的部分 -->

</jmeter>

</target>

<target name="report">

<tstamp>

<format property="report.datestamp" pattern="yyyy/MM/dd HH:mm" />

</tstamp>

<xslt classpathref="xslt.classpath" force="true" in="${jmeter.result.jtlName}" out="${jmeter.result.html.dir}/summary-report.html" style="${jmeter.home}/extras/jmeter.results.shanhe.me.xsl">

<!-- 這里是第三方模板,修改jmeter.properties后生成的報(bào)告有詳細(xì)的請(qǐng)求、響應(yīng)、錯(cuò)誤信息等 -->

<param name="Date Report" expression="${report.datestamp}" />

</xslt>

<!-- 因?yàn)樯厦嫔蓤?bào)告的時(shí)候,不會(huì)將相關(guān)的圖片也一起拷貝至目標(biāo)目錄,所以,需要手動(dòng)拷貝 -->

<copy todir="${jmeter.result.html.dir}">

<fileset dir="${jmeter.home}/extras">

<include name="collapse.png" />

<include name="expand.png" />

</fileset>

</copy>

</target>

<target name="summary-report">

<tstamp>

<format property="report.datestamp" pattern="yyyy/MM/dd HH:mm" />

</tstamp>

<xslt classpathref="xslt.classpath" force="true" in="${jmeter.result.jtlName}" out="${jmeter.result.htmlName}" style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl">

<!-- 這里是一個(gè)簡(jiǎn)要的信息,查看成功和失敗的請(qǐng)求百分比 -->

<param name="dateReport" expression="${report.datestamp}" />

</xslt>

</target>

<!-- zip配置 -->

<target name="zip">

<echo>

打包zip文件

</echo>

<zip destfile="${zipname}" duplicate="preserve">

<zipfileset dir="${jmeter.result.html.dir}" includes="**/*.*" prefix="測(cè)試報(bào)告" />

</zip>

<copy todir="${jmeter.result.html.dir}">

<fileset dir="${zip.dir}">

<include name="*.zip" />

</fileset>

</copy>

</target>

<!-- 配置發(fā)送郵件報(bào)告 -->

<target name="sendEmail">

<echo>

發(fā)送測(cè)試報(bào)告

</echo>

<loadfile property="email_content" srcFile="${jmeter.result.htmlName}" encoding="UTF-8" />

<mail mailhost="${mail_host}" ssl="true" user="${username}" password="${password}" mailport="${mail_port}" subject="${mailsubject}" messagemimetype="text/html" messagefileinputencoding="UTF-8" tolist="${mail_to}">

<from address="${mail_from}" />

<message charset="UTF-8">

${email_content}

</message>

<!-- 附件 -->

<attachments>

<fileset dir="${jmeter.result.html.dir}">

<include name="*.zip" />

</fileset>

</attachments>

</mail>

</target>

</project>

5、打開CMD命令行,切換到testcases目錄下執(zhí)行ant命令;或在testcases目錄編寫ant.bat文件執(zhí)行,文件內(nèi)容如下:

@echo

call ant -buildfile build.xml -l logfile

pause

注:執(zhí)行日志存放在testcase目錄下的logfile文件中。

附:報(bào)告及郵件

1、概略報(bào)告

接口測(cè)試很難嗎?學(xué)會(huì)JMeter+Ant接口自動(dòng)化搭建及實(shí)踐

 

2、詳細(xì)報(bào)告

接口測(cè)試很難嗎?學(xué)會(huì)JMeter+Ant接口自動(dòng)化搭建及實(shí)踐

 

3、郵件及附件

接口測(cè)試很難嗎?學(xué)會(huì)JMeter+Ant接口自動(dòng)化搭建及實(shí)踐

分享到:
標(biāo)簽:接口 測(cè)試
用戶無頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定