Jmeter中獲取返回結果中的值


jmeter做測試中,經常會有下一個請求需要用到上一個請求的返回值,那如何取到這個返回值就顯得很重要。下面有兩個方法,可以按照自己的熟悉程度在測試過程中靈活使用。

1、正則表達式法

      正則表達式是比較直接的獲取返回值得方法,只要熟悉正則表達式,就不在話下。

      使用方法是,請求右鍵---后置處理器---正則表達式提取器,如圖

      

      添加正則表達式提取器后,就可以設置正則表達式了,左右邊界值設置正確,取到值是沒問題的

      

     返回有多組數據的,想取第幾個,那么再【匹配數字】中寫幾。如寫2,則去返回第二組的值。【匹配數字】寫0的時候,多個數組中的值隨機取。

當然,不是所有的人都對正則表達式熟悉,那么在使用中往往會有取不到值得情況,可以試試下面的方法。

2、JSON Extractor 方法(jmeter 3.1)

      測試http接口的時候,返回值通常是json格式的。而json格式是key-value的方式來存,當然我們就可以使用key值來取到后面的value值。

      打開jmeter,新建一個調用接口的http請求,然后添加后置處理器,就可以看到有json extractor這個插件了,如下圖:

      

      注意,若是jmeter3.0,可能需要自己下載插件。該插件下載地址為:http://jmeter-plugins.org/wiki/JSONPathExtractor/,下載完之后,把lib文件夾放到jmeter的目錄下就可以了。3.0的名稱是 json path extractor。

    

      響應數據如下圖:

      

 

      需要從響應數據中取到sign,那么分析一下響應數據中的json串,sign在login_info這個列表里面存着,那就要先取到login_info里面的值,再取login_info里面的元素,就是用戶信息,再取到sign。如下圖:

      

      若響應數據的json串中有多個值,那就要先取到login_info里面的值,再取login_info里面的第一個元素,就是用戶信息,再取到sign。JSON  Path expressions的表達式將會變成$.login_info[0].sign

      

      第二種方法更多詳細介紹,可參考 http://www.nnzhp.cn/archives/322  Jmeter中處理json


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM