2015-10-01 50 views
1

我必須從以下響應正文中捕獲'RelayState'和'SAMLResponse'值。但是,當我嘗試關注xPath表達式時,它並未捕獲這些值。是否有一種解決方法來捕獲這些變量以在Jmeter腳本中使用?或者我做錯了什麼?無法捕獲SAML SSO響應正文中的變量

Xpath查詢使用: -

//input[@type='hidden'][@name='RelayState']/@value 
//input[@type='hidden'][@name='SAMLResponse']/@value 

響應體

<form method='post' action='localhost:9443/store/acs'>; <p> <!--$params--> <input type='hidden' name='RelayState' value='%2Fstore%2Fpages%2Fgc-landing'> <input type='hidden' name='SAMLResponse' value='PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHNhbWwycDpSZXNwb25zZ‌​SBEZXN0aW5hdGlvbj0iaHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9Xh0Q2xhc3NSZWY+PC9zYW1sMjpBdXRo‌​bkNvbnRleHQ+PC9zYW1sMjpBdXRoblN0YXRlbWVudD48L3NhbWwyOkFzc2VydGlvbj48L3NhbWwycDpSZ‌​XNwb25zZT4='> <!--$additionalParams--> <button type='submit'>POST</button></p></form> 

回答

0

儘管有些人說的正則表達式提取VS XPath,我更喜歡使用正則表達式,因爲它對整體測試執行影響較小。您可以在非轉義身體上應用此類正則表達式,以獲得這些值:

name=\"SAMLResponse\" value=\"([^"]+)\"