Jmeter練習(2)關聯-正則表達式提取器


今天研發同事提供了一個驗證token的接口,要驗證token的正確性,現在將整個過程做如下記錄:
  • 場景:驗證token的正確性
  • 原理:首先用戶登錄成功后,會在Response headers中返回一個token值,以及在響應信息中,返回用戶id。驗證token時,需要獲取這個token值以及用戶id作為參數去驗證token的正確性,如果正確,則返回TRUE;反之,則返回FALSE。
  • 分析:如果要驗證token的正確性,那么第一步就是在登錄成功后,去拿對應的值,並把這個值作為參數,放到token的接口中進行傳參。
 
實施如下:
1.接口:
  • 驗證token正確性
    • 地址:http://ip:port/user-center/usertoken/validatetoken
    • 方式:post
    • 參數:*userid:用戶id ;*token:當前的token值
  • 用戶登錄
    • 地址:http://ip:port/user-center/user/json/login
    • 方式:post
    • 參數:*LOGIN:登錄名 ;*PASSWORD:密碼,通過md5加密之后的密碼
2.實施過程:
    • 第一步:添加第一個http請求:用戶登錄(此處不多講)
                   

 

             運行結果如下(在結果中我圈出了在驗證token中需要的參數值):

 

 
    • 第二步:使用“正則表達式提取器”獲取上面的兩個值
           

 

             
 
               
 
 
    • 第三步:添加第二個http請求:驗證token
                

 

  備注:此處的參數化中的值,要與“第二步中的引用名稱保持一致”
    •  第四步:運行,並查看結果(大家可以比較一下,此處獲取的值與“第一步運行結果”的值是否一致,如果一致,則說明獲取成功,如果不一致,則說明在配置中存在問題)
                

 

3.問題
總結一下在此次實施過程遇到的問題:
  • 問題一:參數化后,獲取token值有誤,不能取到值
          原因:1,“要檢查的響應字段”選錯,應該選擇“信息頭(響應信息頭)”
                     2,正則表達式有誤,沒有加上結束的判斷,更改后為“TOKEN: (.+?)\s\S”或者“TOKEN: (.+?)\n”(因為有換行)
 
4.相關知識
  • 正則
      

 

 
 
         
 
 


免責聲明!

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



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