在JMeter测试计划中为POST方法设置HTTP请求采样器

时间:2017-01-24 01:59:40

标签: jmeter load-testing cas

我有一个Web应用程序,其中所有页面/服务都使用基于中央身份验证服务(CAS)的安全性进行保护。我需要使用HTTP POST请求在页面上执行负载测试,但不知道如何为此POST方法配置HTTP Request Sampler,以便通过CAS的安全性进行访问。 我可以通过浏览器手动访问该页面,如下所示:

https://<server>:<portX>/testweb-cas/oauth2.0/callbackAuthorize?ticket=ST-17-J5jknSbPrU1pQ5vFK0bL-testweb.au 

现在我想为:

设置HTTP POST请求采样器

http://<server>:<portY>/Xyz/pages/details.xhtml使用上述链接中的authorization

我之前没有在JMeter中使用过HTTP Request POST采样器,也没有使用可用的解决方案获得所需的输出。

1 个答案:

答案 0 :(得分:1)

最简单的方式:

使用HTTP测试脚本记录器,记录来自浏览器的流量并使用HTTP Sampler构建JMeter测试计划。

另一种方式是,将HTTP Samplers手动添加到Thread Group。从Post下拉菜单中选择Method。提及请求Body data部分的正文。如果要在请求中添加标题,请添加HTTP Header Manager,例如Authorization标题。

注意:访问浏览器不要手动取Authorization值。记录导航,以便为该请求添加HTTP Sampler。添加Regular Expression Extractor以从响应中检索授权值并将其存储在变量中,以便您可以在POST请求中使用它。

注意:添加HTTP Cookie Manager(如果在录制过程中尚未添加),以便JMeter自动处理基于Cookie的身份验证。

参考文献:

  1. HTTP Sampler
  2. Test Script Recorder
  3. Regular Expression Extractor