jmeter如何設置全局變量

場景:性能測試或者接口測試,若是想跨線程引用(案例:A線程組裏面的一個輸出,是B線程組裏面的一個輸入,這個時候若是要引用),這個時候你就必需要設置全局變量;全鏈路壓測也須要分不一樣場景,一般狀況,一個場景就是一個線程組;shell

實現方法:beanshell腳本和函數助手_setPerproty,目前這種方法均可以跨線程的全局變量;json

操做流程以下:beanshell腳本以下:函數

  1.  輸出結果的處理,使用方法正則、json提取器或者json/yaml,提取的教程這裏就不須要贅述,等我有空專門或者大家百度去

     

  2. 提取的數據後面加上beanshell後置處理器,腳本以下

    String userId=bsh.args[0];
    //print (token);
    ${__setProperty(newtoken,${token},true)}性能

  3. 全局變量設置了就須要引用了,這裏我就講述2種引用方法,第一個很簡單,在另一個線程組對應的參數後面,直接把上述全局的前部分拿來就用,即${__setProperty(newtoken,)};還有一種就是使用__P函數,${__P(newtoken,0000)},0是默認值,都是能夠調用;

還有另一種方式設置全局變量:測試

  1. 增長beanshell sampler,在須要提取的請求後面;
  2. 打開函數助手:Ctrl+shift+f1;找到setProperty函數,填寫設置變量名稱和將那個變量設置爲全局變量:第一個值是下一個線程引用的名稱,第二個值是被設置全局的變量,第三個是默認值;

    3.將函數助手生成的腳本,複製粘貼在步驟1裏面;${__setProperty(newtoken,{token},0000)}線程

    3.引用的方法和上面的同樣,沒有什麼區別blog

相關文章
相關標籤/搜索