在jemter實際工作使用中,我們經(jīng)常會遇到這種情況:一個腳本中可能存在多個線程組着绊,在這些線程組中通常會進行跨線程之間的參數(shù)傳遞,那么,通過jmeter怎么實現(xiàn)這種跨線程的參數(shù)傳遞呢铸豁?下面我將通過一個實例來演示這種操作
業(yè)務(wù)場景:直接收款(現(xiàn)金支付)
業(yè)務(wù)流程:1、登錄APP? ?2菊碟、獲取登錄信息? 3节芥、收款選擇客戶? ?4、進行現(xiàn)金支付
其中業(yè)務(wù)流程2/3/4步驟中的請求參數(shù)都依賴于步驟1的響應(yīng)參數(shù)逆害,如登錄后服務(wù)器返回的token藏古、不同用戶登錄APP后返回不同的門店ID(officeid)等
現(xiàn)在,我打算把登錄APP操作放在setUp線程組中(一般登錄只執(zhí)行一次忍燥,且在腳本運行開始時就需要執(zhí)行拧晕,所以放在此線程組中),其他業(yè)務(wù)流程(獲取登錄信息梅垄、收款選擇客戶厂捞、進行現(xiàn)金支付)放在另一個線程組中 输玷,如下圖所示
通過正則表達式獲取APP登錄返回的門店ID(officeid)和token,如下所示
接下來將通過BeanShell后置處理器將獲取的officeid和token值通過_setProperrty函數(shù)進行全局處理,如下所示
最后將處理后的全局變量新值(此處的newofficeId和newtoken),在另一個線程組中通過__P函數(shù)進行調(diào)用即可靡馁,如下所示