在jmeter中如何跨線程引用變量(三)

1、打開cmd,輸入jmeter打開工具
在這裏插入圖片描述
2、引用上一次做過的接口,如不懂,可以看上一篇博客:
https://blog.csdn.net/weixin_46457203/article/details/105621538
在這裏插入圖片描述
3、登錄成功後提取登錄接口出參的sessionId以及userId(一樣的,在上一篇博客中有詳述版)
sessionId:
在這裏插入圖片描述
userId:
在這裏插入圖片描述
4、重點來了哦~ 如何跨線程組引用header入參呢?
首先,先要有其他的線程組,我們來創建下

<1>右擊測試計劃—添加–線程組
在這裏插入圖片描述
<2>右擊新建線程組----添加—取樣器—HTTP請求
在這裏插入圖片描述

<3>這裏我做的是查詢商品詳情接口

在這裏插入圖片描述
<4> 給新建線程組添加HTTP信息頭管理器

右擊商品相關接口-----添加—配置元件----HTTP信息頭管理器

在這裏插入圖片描述
<5> 回到取值的那個接口中去,也就是登錄接口,將值全局化

首先在要將取值的接口下添加BeanShell後置處理程序

右擊登錄接口----添加----後置處理器----BeanShell後置處理程序

在這裏插入圖片描述
點擊右上角的函數助手,選擇__setProperty
在這裏插入圖片描述
通過BeanShell後置處理程序將值全局化

在這裏插入圖片描述
因爲我做的這個接口需要拿到兩個登錄的cookie,所以這裏是兩個函數字符串,道理同上

在這裏插入圖片描述
<6> 引用登錄接口的值到另一個線程組中使用,因爲我要引用的是header參數,所以在另一個線程組中,也就是商品相關接口,也要加入一個HTTP信息頭管理器

在這裏插入圖片描述
把BeanShell後置處理程序全局化的參數拿來調用,那麼首先也要用到函數助手
點擊函數助手----選擇__P
在這裏插入圖片描述
添加我們從登錄接口提取到的存儲正則表達式的變量名
一個是userId
在這裏插入圖片描述
粘貼到商品相關線程組中的HTTP信息頭管理器

在這裏插入圖片描述
sessionId同理
在這裏插入圖片描述
<7> 需要注意的是,如果說一個測試計劃有多個線程組,那麼我們就需要勾選獨立運行每個線程組這個選項

在這裏插入圖片描述

<8> 運行查看結果

在這裏插入圖片描述

這就是跨線程組引用變量
希望能夠幫到大家
如果有什麼不懂的,還請在博客下方留言
小友定當知無不盡
感謝觀看

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章