2017-01-24 43 views
2

我有一个Web应用程序,使用基于中央身份验证服务(CAS)的安全性保护所有页面/服务。我需要使用HTTP POST请求在页面上执行负载测试,但不知道如何为此POST方法配置HTTP请求采样器,以便通过CAS安全访问。 我可以买票了,从它是浏览器中手动获取访问的页面,如下所示:在JMeter测试计划中为POST方法设置HTTP请求采样器

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请求POST采样器,并且没有真正使用可用的解决方案获得所需的输出。

回答

1

最简单的方法:

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

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

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

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

参考文献:

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