您好,登錄后才能下訂單哦!
原文地址:https://www.cnblogs.com/UncleYong/p/10939647.html
前幾天在Q群里看到群友發(fā)的最近10年性能測試工具使用率的統(tǒng)計,最近的2018年,jmeter+loadrunner占了93%的使用率,說明這兩個是主流,其中,jmeter的使用率逐年提升,現(xiàn)在已經(jīng)超過了loadrunner,占了51%。
除了做性能,jmeter也可以做自動化測試,比如jmeter + ant + jenkins的自動化測試框架(參考:https://www.cnblogs.com/UncleYong/p/10739519.html),jmeter還可以做接口功能測試,所以,jmeter應(yīng)該是每個測試工程師的必備技能。
這里,我們著重講解jmeter的關(guān)聯(lián),什么是關(guān)聯(lián)?將服務(wù)器提供動態(tài)變化的值存放在變量中,當需要使用該變量時,自動從服務(wù)器響應(yīng)的信息中獲取該值,并在后面使用的過程中進行替換。(也可能是前端頁面動態(tài)生成的值)
jmeter關(guān)聯(lián)的方式比較多,這里介紹5種方式,總有一種讓你喜歡。 如果想了解loadrunner關(guān)聯(lián)的,可以參考LoadRunner【第五篇】關(guān)聯(lián):https://www.cnblogs.com/UncleYong/p/10702702.html
回到頂部
腳本準備
這里,我們用dummy取樣器來模擬服務(wù)器的返回,通過關(guān)聯(lián)獲取name的值,然后百度搜索這個name的值,這就我們就簡單模擬了請求間的依賴關(guān)系。
添加dummy取樣器
設(shè)置返回內(nèi)容
搜索的關(guān)鍵字是上一個請求返回的name值
打印獲取到的name的值
調(diào)試的取樣器
回到頂部
方法一:正則表達式提取器
正則.*?,參考:https://www.cnblogs.com/UncleYong/p/10779268.html
關(guān)聯(lián)獲取到的值
百度搜索結(jié)果
回到頂部
方法二:jp@gc - JSON Path Extractor提取器
$表示接口的返回值,如果取字典key的value,用點號,如果是取列表的某個值,用索引
關(guān)聯(lián)獲取到的值
百度搜索結(jié)果(略)
回到頂部
方式三:Json Extractor提取器
和方法二類似,$表示接口的返回值,如果取字典key的value,用點號,如果是取列表的某個值,用索引
關(guān)聯(lián)獲取到的值
百度搜索結(jié)果(略)
回到頂部
方式四:邊界提取器
這個和loadrunner中的關(guān)聯(lián)很像,通過左右邊界來取值,參考:https://www.cnblogs.com/UncleYong/p/10702702.html
關(guān)聯(lián)獲取到的值
百度搜索結(jié)果(略)
回到頂部
方式五:beanshell后置處理器
寫beanshell腳本,解析json字符串。
這里要用到fastjson,jar包下載地址:https://mvnrepository.com/artifact/com.alibaba/fastjson
下載后,把jar包放到D:\apache-jmeter-5.1.1\lib\ext下,然后重啟jmeter即可
然后重啟jmeter即可
fastjson解析json字符串
百度搜索結(jié)果(略)
至此,5種方式都準確的獲取到了需要關(guān)聯(lián)的值。
做一個暖心的測試技術(shù)分享者,歡迎關(guān)注微信公眾號【qzcsbj】、加入測試干貨分享Q群【652122175】或者加作者Q號【168632201】咨詢測試問題。更多干貨,敬請關(guān)注【https://www.cnblogs.com/UncleYong/p/10530261.html】
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。