2016-01-21 97 views
4

我有一個相當簡單的我們網站的jmeter腳本。作爲網站流程的一部分,我使用我們的API來更新用戶的應用程序。jmeter - 授權標題丟失

該API使用OAuth身份驗證,我熟悉使用我們自己的專有測試工具。

首先,我通過調用授權端點來獲得身份驗證令牌。這會返回一些像這樣的JSON:

{"access_token":"a really long auth token string"} 

在我的腳本中,我使用正則表達式來捕獲此標記字符串。作爲調查這個問題的一部分,我使用了一個Debug PostProcessor來檢查我是否得到了正確的字符串,我這樣做。它被保存爲變量'authToken'。

在腳本中非常下一步,我通過一個HTTP報頭管理器中添加一個頭,像這樣:

Imgur

我知道這頭是正確的,因爲我們在它的許多情況下,我們的API測試。

腳本的相關部分看起來是這樣的:

Imgur


每次然而我運行該腳本,使用該令牌步驟/頭返回401未經授權。

我測試了Chrome插件中的實際URL和標頭,並且調用按預期工作。

在「查看結果樹」偵聽器中,根本沒有證據表明授權標頭完全被設置。我試圖對授權令牌進行硬編碼,但沒有喜悅 - 它似乎仍然不是請求的一部分。

從結果樹,請求如下:

POST <correct URL> 

POST data:{"id":"<item id>"} 

Cookie Data: SessionProxyFilter_SessionId=<stuff>; sessionToken=<stuff> 

Request Headers: 
Content-Length: 52 
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36  (KHTML, like Gecko) Chrome/43.0.2357.124 Safari/537.36 
Connection: keep-alive 
Content-Type: application/json 

Imgur

結果樹也沒有顯示出重定向。

我試過解決方案herehere但這些都沒有工作。

奇怪的是,我幾乎可以肯定,這個工作大約一個月前,並且據我所知,機器上,腳本或jmeter安裝中都沒有發生任何變化。顯然其中一個是不正確的,但我在我的智慧結束。

+0

你可以在這部分顯示你的測試計劃結構和縮放嗎? –

+0

我已經屏蔽了測試,但猜測你想要更多的比... –

+0

我想你顯示的標題管理器是第二個?你可以顯示獲取授權令牌的詳細信息?你能顯示查看結果樹請求標籤嗎? thx –

回答

3

我的團隊的另一位成員爲我解答了這個問題,這很簡單。我只需要將問題步驟的'執行'設置爲'HttpClient4'。