Jmeter如何使用正則表示式把提取的token值作為Bearer 型別放在其他介面的請求頭裡?
阿新 • • 發佈:2019-02-07
近日,在用Jmeter介面測試過程中遇到一個難題,業務場景裡很多依賴token的介面,在設定了正則表示式後,取不到token的值,導致報錯,後經過多番排查 嘗試設定後,最終找到解決方案,現將此次案例線上記錄,以便能幫到有相同經歷的同行們。
我們介面設計的邏輯如下:
1.賬號登入之後返回一個動態的token,使用者資訊的介面需要拿到這個token的值,放在請求頭裡作為傳參物件
2.token的值,不能直接作為傳參物件,屬於bearer型別 需要組合傳參:Bearer "toke"值
首先,第一步用正則表示式提取token值,選中登入介面,右鍵--新增--後置處理器--正則表示式提取器,(我這邊的"token" : "eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxMzE1NzEzNjU4NiIsIm9wZW5pZCI6IjJiY2I0YTNiYTg0Njc2MjM5ZTQ4Y2JlYjE5NmI4MDFjIiwidXNlcmlkIjo0NDcyNzQxLCJleHAiOjE1MjczODM3NTB9.b6GkbQ98dWi57wwSnZqL722n5mqvS1N8YXGmRYaBzRsM7wFa6QxCT2ZwQRWmw2Gb2HC3MAa2T_rE6w4R6",)
,在同一個執行緒裡 右鍵新增一個獲取使用者資訊的介面,右鍵新增配置原件---HTTP資訊頭管理器,注:同一個執行緒下不同的介面使用不同的請求頭
最後新增一個檢視結構樹,執
行
起初,不清楚同個執行緒裡,不同的介面還能設定不同的請求頭,思路一直侷限在 兩個執行緒裡,但其實兩個執行緒是獨立的,第一個執行緒提取的token,無法返回到第二個執行緒裡。