安裝與配置?注:官方建議不要用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ù)使用${}方式取值

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

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

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ì)話框

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

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

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

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

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

鏈接數(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ù)監(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ì)話框
