Jmeter功能介紹及結(jié)合ant的使用

安裝與配置?注:官方建議不要用GUI模式做負(fù)載測(cè)試,GUI模式限于做腳本開(kāi)發(fā)調(diào)試!

結(jié)構(gòu)體系


取樣器:

? ?訪問(wèn)路徑:測(cè)試計(jì)劃-線程組-取樣器

? ? 作用:模擬用戶操作,向服務(wù)器發(fā)出http請(qǐng)求、Java請(qǐng)求或者web Service請(qǐng)求等

斷言:

? ? 訪問(wèn)路徑:測(cè)試計(jì)劃-斷言

? ? 作用:驗(yàn)證結(jié)果是否正確

監(jiān)聽(tīng)器:

? ? 訪問(wèn)路徑:測(cè)試計(jì)劃-監(jiān)聽(tīng)器

? ? 作用:1、添加結(jié)果監(jiān)聽(tīng),可以保存文件;

?? ??? ??? ?? 2、展示結(jié)果,以表格或者圖形的形式

前置處理器:

? ? 訪問(wèn)路徑:測(cè)試計(jì)劃-前置處理器

? ? 作用:環(huán)境或者參數(shù)的準(zhǔn)備工作

? ? 使用場(chǎng)景:在對(duì)數(shù)據(jù)庫(kù)操作前建立一個(gè)數(shù)據(jù)庫(kù)鏈接

配置原件:?? ?

?? ?訪問(wèn)路徑:測(cè)試計(jì)劃-配置原件

? ? 作用:為取樣器提供預(yù)備數(shù)據(jù)

? ? 使用場(chǎng)景:1、腳本的參數(shù)化配置

?? ??? ??? ??? ?? ? ?2、自動(dòng)記錄服務(wù)器的返回?cái)?shù)據(jù),入cache信息

后置處理器:

? ? 訪問(wèn)路徑:測(cè)試計(jì)劃-后置處理器

? ? 作用:對(duì)響應(yīng)數(shù)據(jù)做處理

? ? 使用場(chǎng)景:處理服務(wù)器的返回結(jié)果,利用正則表達(dá)式提取器進(jìn)行登錄的SessionID的提取

控制器:

? ? 訪問(wèn)路徑:測(cè)試計(jì)劃-線程組-邏輯控制器

? ? 作用:滿足一些場(chǎng)景的邏輯控制需求

? ? 使用場(chǎng)景:例如用僅一次控制器控制登錄次數(shù)

定時(shí)器:

? ? 訪問(wèn)路徑:測(cè)試計(jì)劃-線程組-定時(shí)器

? ? 作用:滿足一些場(chǎng)景的控制需求

? ? 使用場(chǎng)景:模擬請(qǐng)求在同一時(shí)刻發(fā)送,并發(fā)負(fù)載請(qǐng)求

線程組:

? ? 訪問(wèn)路徑:測(cè)試計(jì)劃-線程組

? ? 作用:一線程代表一個(gè)虛擬用戶,模擬大量用戶負(fù)載

測(cè)試片段:

? ? 訪問(wèn)路徑:測(cè)試計(jì)劃-測(cè)試片段

? ? 作用:可以用來(lái)輔助做腳本備份和服用,類似腳本開(kāi)發(fā)中的模塊化

運(yùn)行原理


以線程的方式,建立一個(gè)線程池。通過(guò)多線程運(yùn)行取樣器來(lái)模擬產(chǎn)生大量負(fù)載,在運(yùn)行過(guò)程中通過(guò)斷言來(lái)判斷結(jié)果的正確性,通過(guò)監(jiān)聽(tīng)器來(lái)手機(jī)記錄測(cè)試結(jié)果。

使用


添加HTTP請(qǐng)求:填寫(xiě)【協(xié)議】【服務(wù)器名稱或IP】【請(qǐng)求方式】【請(qǐng)求路徑】注:使用自定義變量或者參數(shù)使用${}方式取值

添加http請(qǐng)求

添加用戶定義的變量:添加-配置元件-用戶定義的變量(一般用于配置公共變量)

添加用戶定義的變量

添加參數(shù)-[參數(shù)化-csv]:添加-配置元件-CSV數(shù)據(jù)文件設(shè)置(例如模仿多個(gè)用戶登錄,可將用戶名和密碼定義為參數(shù)傳入接口使用)

參數(shù)化-csv

1、在本地創(chuàng)建文本文件或者excel文件

2、文件中寫(xiě)入?yún)?shù)并用英文逗號(hào)隔開(kāi),例如userName,num,不同線程參數(shù)可用換行符

3、將文件傳入jmeter

添加參數(shù)-【用戶參數(shù)】:添加-前置處理器-參數(shù)

添加參數(shù)-【隨機(jī)參數(shù)】:工具-函數(shù)助手對(duì)話框

隨即參數(shù)

添加請(qǐng)求參數(shù):

添加請(qǐng)求參數(shù)

HTTP信息頭管理器:選中http請(qǐng)求-添加-配置元鍵-HTTP信息頭管理器

http信息頭管理器

正則表達(dá)式提取器:選中http請(qǐng)求-添加-后置處理器-正則表達(dá)式提取器(提取請(qǐng)求結(jié)果中的值)

正則表達(dá)式提取器

JSON提取器:選中http請(qǐng)求-添加-后置處理器-JSON提取器

json提取器

調(diào)試取樣器:點(diǎn)擊線程組-添加-取樣器-調(diào)試取樣器(查看取樣器結(jié)果)

調(diào)試取樣器

鏈接數(shù)據(jù)庫(kù):1、點(diǎn)擊線程組-添加-配置元鍵-JDBC Connection Configuration;2、點(diǎn)擊線程組-添加-監(jiān)聽(tīng)器-JDBC Request 3、添加查看結(jié)果樹(shù) 4、聚合報(bào)告

連接數(shù)據(jù)庫(kù)圖1
鏈接數(shù)據(jù)庫(kù)圖2


數(shù)據(jù)監(jiān)控工具-XAMPP(后續(xù)研究)


ANT(構(gòu)建工具):跨平臺(tái),使用java,功能強(qiáng)大,核心是使用一個(gè)配置文件執(zhí)行腳本(bulid.xml)

下載:https://ant.apache.org/bindownload.cgi,解壓到指定盤中

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

集成到j(luò)meter:

1、將Jmeter的extras目錄中ant-jmeter-1.1.1.jar包拷貝至ant安裝目錄下的lib目錄中

2、修改jmeter的bin目錄下jmeter.properties文件的配置:jmeter.save.saveservice.output_format=xml

3、在指定的工作目錄下創(chuàng)建文件夾view(jmeter腳本保存的目錄),并在其中創(chuàng)建一個(gè)build.xml文件并配置注意配置style="E:\jmeter\apache-jmeter-5.5/extras/jmeter-results-detail-report_21.xsl">

4、jmeter配置jmeter.properties

Jenkins集成 注:需要JDK11 or JDK17

安裝地址:https://jenkins.io/download/

1、接口聯(lián)調(diào)測(cè)試

添加接口a

添加公用變量 點(diǎn)擊取樣器-配置元件-用戶定義變量

添加Json提取器 點(diǎn)擊取樣器-后置處理器-Json提取器(在$.data.id)

添加接口b

配置參數(shù)${testname}

添加調(diào)試取樣器 線程組-取樣器-debug sampler

在調(diào)試取樣器下面添加查看結(jié)果樹(shù),查看獲取的結(jié)果是否展示正確

注:jmeter傳入?yún)?shù)不支持?jǐn)?shù)組格式,需要轉(zhuǎn)換成字符串?。。?!

MD5、base64加密 工具-函數(shù)助手對(duì)話框

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容