2017-09-21 135 views
-1

我想對使用Azure AD身份驗證的站點進行性能測試。爲了登錄到網站,3個請求被調用。 在第一次請求中,clientid在URL中的第二個請求中傳遞 ,它創建一個參數'tx'並且它有一定的價值。休息它會創建我成功提取的csrf標記。 但我面臨提取'tx'值的問題 我正在檢查之前的請求響應中的值,但我無法找到它。有什麼我失蹤?我在Fidler上查了一下,我也沒有得到tx的價值。與Jmeter的Azure AD身份驗證

回答

0

我建議你在Chrome(例如)中使用開發者工具>網絡打開執行登錄操作 - 並在第二個請求(發送'tx')獲取瀏覽器發送的值,然後搜索以前的響應中的值 - 並查找如何將它表示爲下載數據中的參數。

我有一個類似的需求,並最終寫PostProcessor(提取一個值並保存在一個變量中)和PreProcessor(將變量值注入到已發佈的參數中) - 您可能需要處理HTML,javascript或嵌入式JSON在最初的迴應中。

事實是(越來越多)Web應用程序在客戶端JavaScript中嵌入功能,您需要設置JMeter來模擬此功能。

+0

@ Dazed-嗨..謝謝您的回覆。我曾嘗試過,但不知何故,我無法從先前的請求響應中獲取該值。令牌(tx)在調用該請求並作爲查詢參數發送時創建。還有另一個csrf令牌,我通過向後續請求添加後處理器來提取它。但我正面臨(tx)的問題。 –

+0

然後,您可能需要深入瞭解Azure AD協議(通過https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-authentication-protocols)和/或發佈問題在Azure AD中,身份驗證標記 - 我認爲這比Azure更關於Azure – Dazed

+0

另外,您可以查看Java OpenSource庫(https://github.com/AzureAD/azure-activedirectory-library-for-java)和將其包裝到採樣器中(http://jmeter.apache.org/usermanual/jmeter_tutorial.html) – Dazed