2017-08-05 100 views
0

我正在使用JMeter對API進行負載測試。爲此,我調用一個oauth鏈接,該鏈接返回頭文件中的代碼,供我進一步測試。但是鏈接重定向到另一個鏈接,並且在返回狀態碼302的響應時我無法捕獲響應標頭的值。我怎樣才能做到這一點。JMeter在狀態碼302重定向之前回應標題值

回答

0

如果你的情況是這樣的一個:

JMeter Redirect

您仍然可以通過修改定期提取後的樣品結果的動態值表達提取範圍

根據documentation

適用於:

這對於具有采樣使用可以生成子採樣,例如具有嵌入式資源的HTTP採樣器,郵件閱讀器或由事務控制器生成的示例。

  • 主樣品僅 - 僅適用於主樣品

  • 子樣只 - 僅適用於子樣本

  • 主樣品和子樣品 - 適用於兩者。

  • JMeter的可變 - 斷言是要被施加到的命名變量

內容默認情況下正則表達式提取正在調查Main sample only,在上面的例子中它是HTTP Request,如果您要查找的數據存儲在其中一個子樣本中,這足以將Regular Expression Extractor的範圍更改爲查看子結果以及:

JMeter RegEx Sub Results

+0

有一個小問題。它只能交替使用。它返回一次狀態碼302,下一次返回狀態碼200,下次再次返回302。我很困惑 –

0

你有2種選擇:

  1. 不允許HTTP請求重定向。只需取消選中在HTTP取樣器「進行重定向」複選框:

    enter image description here

    這樣就可以正常處理此請求。當然,缺點是你需要添加第二個請求,它會將你帶到一個通常自動重定向的鏈接。

  2. 大多數後處理器允許您從主要樣本或子樣本或兩者中提取值。因此,按照之前的重定向,但更改後處理器以從子示例中提取值。例如正則表達式提取:

    enter image description here

+0

感謝您指出這一點。我選擇了正則表達式提取器中的主要樣本和子樣本。但是有一個小問題。它只能交替使用。它返回狀態碼302一次,並且下一次返回狀態碼200。它可能是一個緩存問題? –