我必须捕捉' RelayState'和' SAMLResponse'来自以下响应主体的值。但是,当我尝试使用xPath表达式时,它没有捕获这些值。是否有解决方法来捕获这些变量以在Jmeter脚本中使用?或者我做错了什么?
使用的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='PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHNhbWwycDpSZXNwb25zZSBEZXN0aW5hdGlvbj0iaHR0cHM6Ly9sb2NhbGhvc3Q6OTQ0My9Xh0Q2xhc3NSZWY+PC9zYW1sMjpBdXRobkNvbnRleHQ+PC9zYW1sMjpBdXRoblN0YXRlbWVudD48L3NhbWwyOkFzc2VydGlvbj48L3NhbWwycDpSZXNwb25zZT4='> <!--$additionalParams--> <button type='submit'>POST</button></p></form>
答案 0 :(得分:1)
您是否尝试使用正则表达式提取器?
后处理器 - &gt;正则表达式提取器:http://jmeter.apache.org/usermanual/component_reference.html#Regular_Expression_Extractor
并使用正则表达式下方获取&#39; RelayState&#39;的值和&#39; SAMLResponse&#39;
var group = new BsonDocument { { "_id", new BsonDocument
{
{ "Month", new BsonDocument("$month", "$DateEntered") },
{ "Day", new BsonDocument("$dayOfMonth", "$DateEntered") },
{ "Year", new BsonDocument("$year", "$DateEntered") },
{ "Role", "$Role" },
}
}, { "Count", new BsonDocument("$sum", 1) } };
答案 1 :(得分:0)
尽管有些人对正则表达式提取器与xpath的说法不同,但我更喜欢使用正则表达式,因为它对整体测试执行的影响较小。您可以在非转义体上应用这样的正则表达式来获取这些值:
name=\"SAMLResponse\" value=\"([^"]+)\"