Jmeter關(guān)聯(lián)實現(xiàn)及參數(shù)化使用解析
前言
一、Jmeter介紹
- 一款融合接口、性能都能完成的測試工具
- 純JAVA開發(fā)的工具
- 開源工具
- 支持多種協(xié)議
- 應(yīng)該是測試業(yè)界目前應(yīng)用最多的工具之一
二、接口執(zhí)行實現(xiàn)
- 添加HTTP取樣器:右擊測試計劃--新建并右擊線程組--添加--取樣器--新增HTTP請求
- 在HTTP請求元件中添加相應(yīng)請求信息(請求行、請求頭、請求正文)
- 添加察看結(jié)果樹:右擊線程組--添加--監(jiān)聽器--新增察看結(jié)果樹
- 保存剛設(shè)置的接口腳本,點擊執(zhí)行
三、關(guān)聯(lián)實現(xiàn)
3.1 關(guān)聯(lián)的概念
關(guān)聯(lián)也稱為串行傳參或數(shù)據(jù)依賴,即上一個接口返回的內(nèi)容的部分值作為下一個接口運行的參數(shù)的過程。
3.2 關(guān)聯(lián)的實現(xiàn)步驟
- 在jmeter中錄入A、B兩個接口的信息(A為上一個接口、B為下一個接口,方便下面描述)
- 右擊 A 接口的取樣器 -- 添加 -- 后置處理器 -- 正則表達(dá)式提取器
- 在正則表達(dá)式提取器設(shè)置截取B接口所需要的參數(shù)信息,參數(shù)名假定為token
- 進(jìn)入 B 接口的取樣器,把需要填入A接口參數(shù)的地方用 ${token} 來替換
- 備注:如果返回的響應(yīng)正文是json數(shù)據(jù),還可以使用JSON提取器
正則表達(dá)式提取器界面操作介紹:
JSON提取器界面操作介紹:
四、參數(shù)化實現(xiàn)
參數(shù)化是為了讓相同的模塊、方法使用不同的參數(shù)進(jìn)行測試,達(dá)到提高測試覆蓋率的目的,jmeter實現(xiàn)參數(shù)化的方式很多,常用的方式有:
用戶定義的變量實現(xiàn)
函數(shù)助手對話框的部分函數(shù)實現(xiàn)
依次進(jìn)入--tools菜單--函數(shù)助手對話框,部分函數(shù)舉例如下:
${__machineIP()}函數(shù):
${__Random()}函數(shù):
${__RandomDate()}函數(shù):
${__RandomString()}函數(shù):
利用csv文件實現(xiàn)
CSV是一種通用的、相對簡單的文件格式,被用戶、商業(yè)和科學(xué)廣泛應(yīng)用。最廣泛的應(yīng)用是在程序之間轉(zhuǎn)移表格數(shù)據(jù),jmeter使用csv文件也可以來進(jìn)行參數(shù)化。
通過右擊線程組--添加--配置文件--csv數(shù)據(jù)文件設(shè)置,界面如下:
五:總結(jié)
- 關(guān)聯(lián)和參數(shù)化是jmeter必備技能之一,必須掌握
- 關(guān)聯(lián)可以擴(kuò)展到實現(xiàn)一些常見的業(yè)務(wù)場景,比如隨機(jī)對商品下單、隨機(jī)選擇選項等
- 進(jìn)行分布式性能測試的時候,csv文件注意保持每臺獨立
- 參數(shù)化這一塊還可以調(diào)用數(shù)據(jù)庫數(shù)據(jù)、利用Bean shell取樣器寫java代碼來實現(xiàn)等
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Java四舍五入時保留指定小數(shù)位數(shù)的五種方式
這篇文章主要介紹了Java四舍五入時保留指定小數(shù)位數(shù)的五種方式,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下2020-09-09java中public class與class的區(qū)別詳解
以下是對java中public class與class的區(qū)別進(jìn)行了分析介紹,需要的朋友可以過來參考下2013-07-07一文帶你學(xué)會Java網(wǎng)絡(luò)編程
網(wǎng)絡(luò)編程是指編寫運行在多個設(shè)備(計算機(jī))的程序,這些設(shè)備都通過網(wǎng)絡(luò)連接起來。這篇文章將帶大家深入了解一下Java的網(wǎng)絡(luò)編程,需要的可以了解一下2022-08-08詳解Java中while和do-while循環(huán)、break的使用
本文介紹了循環(huán)結(jié)構(gòu)語句while和do-while循環(huán)、break的使用,while循環(huán)語句通過流程圖和語法語句結(jié)合一個求1~10的整數(shù)和的例子來幫助大家理解while循環(huán)的用法,感興趣的朋友跟隨小編來看看吧2020-11-11解析ConcurrentHashMap:成員屬性、內(nèi)部類、構(gòu)造方法
ConcurrentHashMap是由Segment數(shù)組結(jié)構(gòu)和HashEntry數(shù)組結(jié)構(gòu)組成。Segment的結(jié)構(gòu)和HashMap類似,是一種數(shù)組和鏈表結(jié)構(gòu),今天給大家普及java面試常見問題---ConcurrentHashMap知識,一起看看吧2021-06-06Spring @Value如何通過${}、#{}注入不同類型的值
這篇文章主要介紹了Spring @Value如何通過${}、#{}注入不同類型的值問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05