JMeter(二十五)HTTP属性管理器HTTP Cookie Manager、HTTP Request Defaults

Test Plan的配置元件中有一些和HTTP属性相关的元件:HTTP Cache Manager、HTTP Authorization Manager、HTTP Cookie Manager、HTTP Header Manager、HTTPRequest Defaults等,这些是什么呢?

JMeter不是浏览器,因此其行为并不和浏览器完全一致。这些JMeter提供的HTTP属性管理器用于尽可能模拟浏览器的行为,在HTTP协议层上定制发送给被测应用的HTTP请求。

(1)HTTPRequest Defaults

该属性管理器用于设置其作用范围内的所有HTTP的默认值,可被设置的内容包括HTTP请求的host、端口、协议等。

一个Test Plan中可以有多个HTTPRequest Defaults,处于多个HTTPRequest Defaults作用域内的Sampler使用HTTPRequest Defaults中设置值的叠加值。

事例

HTTP Request Defaults1:Server Name or IP: www.baidu.com,一个参数:aaa=111

HTTP Request Defaults2:Server Name or IP: www.qq.com,两个参数:bbb=22,aaa=333

运行结果

总结:

1、一个测试计划中可以有多个Defaults组件,多个Defaults组件的默认值会叠加,如上图,虽然两个Defaults 组件都定义了参数aaa,但发出的请求还是会叠加起来。

2、两个default中都定义的"Server Name or IP",显示在发送请求时只能使用一个,这里使用的是第一个default定义的值www.baidu.com

事例代码:下载

(2)HTTP Authorization Manager

该属性管理器用于设置自动对一些需要NTLM验证的页面进行认证和登录。如下图:监控tomcat

(3)HTTP Cache Manager

该属性管理器用于模拟浏览器的Cache行为。为Test Plan增加该属性管理器后,Test Plan运行过程中会使用Last-Modified、ETag和Expired等决定是否从Cache中获取相应的元素。

注意:如果Test

Plan中的某个Sampler请求的元素是被Cache的元素,则Test

Plan在运行过程中会直接从Cache中读取该元素,这样Sampler得到的返回值就会是空。在这种情况下,如果为该Sampler设置了

Assertion检查响应体中的制定内容是否存在,该Assertion就会失败。

(4)HTTP Cookie Manager

该属性管理器用于管理Test Plan运行时的所有Cookie。HTTP Cookie Manager可以自动储存服务器发送给客户端的所有Cookie,并在发送请求时附加上合适的Cookie.

同时,用户也可以在HTTP Cookie Manager中手工添加一些Cookie,这些被手工添加的Cookie会在发送请求时被自动附加到请求。

注意:

如果在一个测试计划内有多个Cookie Manager ,Jmeter目前无法指定哪个被使用。所以,一个测试计划内最好只有一个cookie manager。并且,一个manager里的 cookie 并不能被其它manager所引用。所以在使用多个Cookie Managers 时要谨慎。

同理,上面这个规则同样适用于config element下面的其它manager:

如果选中"Clear cookies each iteration?"此项,意味着线程在每次迭代时清除自己会话中的所有Cookie.

(5)HTTP Header Manager

该属性管理器用于定制Sampler发出的HTTP请求的请求头的内容。不同的浏览器发出的HTTP请求具有不同的Agent,访问某些有防盗链的

页面时需要正确的Refer...这些情况下都需要通过HTTP Header Manager来保证发送的HTTP请求是正确的。如下图:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,095评论 19 139
  • 测试计划:是使用jmeter进行测试的起点,是其他测试元件的容器,一个完整的测试计划 包括一个或多个线程组,逻辑控...
    测试猴阅读 8,236评论 0 4
  • 一、概念(载录于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434阅读 12,720评论 6 152
  • Http协议详解 标签(空格分隔): Linux 声明:本片文章非原创,内容来源于博客园作者MIN飞翔的HTTP协...
    Sivin阅读 10,628评论 3 82
  • 小B,职场小白。入北上广寻求工作岗位,投简历无数,均不甚理想。遂打算自我创业,东拼西凑,有了资金,受不了失业的心慌...
    扬眉的后花园阅读 4,172评论 0 0

友情链接更多精彩内容