通过SAML协议的Web应用程序的jMeter脚本

时间:2018-08-29 00:57:28

标签: jmeter saml

我是jMeter工具的新手。谷歌搜索后,我能够通过jMeter通过GUI构造脚本。

我需要对通过SAML协议访问的Web应用程序进行性能和负载测试。我正在尝试提取SAML请求和响应的值,并使用BoundaryExtractor组件将其分配给变量,这是jMeter 4.0中的新增功能。

以下是我为BoundaryExtractor配置的值:

Left Boundary - Name="SAMLRequest" Value="

Right Boundary - "/>

我尝试了左右边界的所有可能值。但是该值未分配给变量,因此我无法使用它。仅供参考,这是一个使用SAP产品开发的Web应用程序,因此URL看起来也是

  

http://example.com/sap/ui/abc/index.html

一旦输入了上述URL,它将调用Single Sign-On网站,并且该URL为

  

http://sso.abc.com/adfs/ls/?SAMLRequest=abc3435abced44e ...

请参阅chrome开发人员页面中的屏幕截图,其中SAMLRequest作为查询字符串发送。 enter image description here

我不知道如何使用BoundaryExtractor从查询字符串中读取值。

我还从jMeter脚本附加了BoundaryExtractor。请指导我如何执行此操作。这样我就可以为多个并发用户执行此操作。

enter image description here

2 个答案:

答案 0 :(得分:0)

SAMLRequest是URL的一部分,因此您在Field to Check单选按钮中显示选择的URL

这也是一个以&结尾的查询参数(下一个参数),所以选择

右边界:SAMLRequest=

左边界:&

答案 1 :(得分:0)

这个SAMLRequest并非无处不在,它必须出现在主采样器或子采样的响应中,例如在redirect的情况下,可能会出现。使用View Results Tree侦听器查看请求和响应的详细信息,它将帮助您确定“有趣的”值所在的位置,甚至无需重新运行请求即可测试边界提取器

JMeter Boundary Extractor Tester

因此,我建议在边界提取器的“应用于”部分中选择Main sample and sub samples字段。

JMeter Apply To Boundary Extractor

有关在JMeter测试中实现SAML登录的更多信息,请参见How to Load Test SAML SSO Secured Websites with JMeter文章