当前位置:   article > 正文

Jmeter-HTTP属性管理器-转载_use thread group configuration to control cache cl

use thread group configuration to control cache clearing

10、 HTTP属性管理器-转载

转载原文请点击此处

jmeter提供以下五种http属性管理器:

  • HTTP Cache Manager:Cache管理器

  • HTTP Cookie Manager:cookie管理器

  • HTTP Header Manager:信息头管理器

  • HTTP Authorzation Manager:授权管理器

  • HTTP Request Defaults:请求默认值

10.1 HTTP Cache Manager

在这里插入图片描述

  • Clear cache each iteration?(每次迭代清空缓存):如果选择该项,则该属性管理器下的所有Sampler每次执行时都会清除缓存;

  • Use Thread Group configuration to control cache clearing(使用线程组配置来控制缓存清理):

  • Use Cache-Control/Expires header when processing GET requests:在处理GET请求时使用缓存/过期信息头;

  • Max Number of elements in cache(缓存中的最大元素数):默认数值为5000,当然可以根据需要自行修改;

PS:

1、如果Test Plan中某个Sampler请求的元素是被缓存的元素,则Test Plan 在运行过程中会直接从Cache中读取元素,这样得到的返回值就会是空。

2、在这种情况下,如果为该Sampler设置了断言检查响应体中的指定内容是否存在,该断言就会失败!

3、为test plan增加该属性管理器后,test plan运行过程中会使用Last-Modified、ETag和Expired等决定是否从Cache中获取对应元素。

Cache:一般指的是浏览器的缓存

Last-Modified:文件在服务端最后被修改的时间

ETag:在HTTP协议规格说明中定义为:被请求变量的实体标记

Expired:给出的日期/时间之后;一般结合Last-Modified一起使用,用于控制请求文件的有效时间

10.2、HTTP Cookie Manager

在这里插入图片描述

  • Clear cookie each iteration?(每次迭代时清除自己会话区域的所有cookie);
  • Cookie Policy:cookie的管理策略,建议选择compatibility,兼容性强;

如果想让JMeter的cookie manager支持跨域, 修改JMeter.property:CookieManager.check.cookies=false;
HTTP cookie Manager管理cookie有两种方法:

①、它可以像浏览器一样存储和发送cookie,如果发送一个带cookie的http请求,cookie manager会自动存储该请求的cookies,并且后面如果发送同源站点的http请求时,都可以用这个cookies;每个线程都有自己的“cookie存储区域”,所以当测试一个使用cookie来管理session信息的web站点时,每个JMeter线程都有自己的session;

PS:以这种自动收集的方式收集到的cookie不会在cookie manager中进行展示,但是运行后通过查看结果树可以查看到cookie信息,接受到的cookie会被自动存储在线程变量中,

但是从Jmeter2.3.2版本后,默认不再存储,如果你想要manager自动存储收集到的cookie,你需要修改JMeter.property:CookieManager.save.cookies=true

存储的时候,cookie的key会以“COOKIE_”为前缀命名(默认情况),如果你想自定义这个前缀,修改JMeter.property:CookieManager.name.prefix= ;

②、除了上面说的自动收集,还可以手动添加cookie,点击界面下方的Add按钮,然后输入cookie的相关信息;

PS:一般不建议手动添加,可以将cookie通过浏览器插件(比如Firefox的firebug)导出cookie,然后点击界面下方的load按钮,载入刚才导出的cookie文件即可。

关于Cookie:

cookie一般分为2种:持久cookie(Permanent cookie)和会话cookie(Session cookie):

  • 持久cookie:保存在客户端本地硬盘上,在浏览器被关闭后仍然存在;

  • 会话cookie:通常保存在浏览器进程的会话中,一旦浏览器会话结束或关闭,cookie就不再存在。

10.3、HTTP Header Manager

在这里插入图片描述

10.4、HTTP Authorzation Manager

在这里插入图片描述

该属性管理器用于设置自动对一些需要验证的页面进行验证和登录;

  • 基础URL:需要使用认证页面的基础URL,如上图,当取样器访问它时,jmeter会使用定义的username和password进行认证和登录;
  • 用户名:用于认证和登录的用户名;
  • 密码:用于认证和登录的口令
  • 域:身份认证页面的域名;
  • Realm:Realm字串;

Mechanism:机制;jmeter的http授权管理器目前提供2种认证机制:BASIC_DIGEST和KERBEROS:

BASIC_DIGEST:HTTP协议并没有定义相关的安全认证方面的标准,而BASIC_DIGEST是一套基于http服务端的认证机制,保护相关资源避免被非法用户访问

如果你要访问被保护的资源,则必需要提供合法的用户名和密码。它和HTTPS没有任何关系(前者为用户认证机制,后者为信息通道加密)。

KERBEROS:一个基于共享秘钥对称加密的安全网络认证系统,其避免了密码在网上传输,将密码作为对称加密的秘钥,通过能否解密来验证用户身份;

10.5、HTTP Request Defaults

在这里插入图片描述

HTTP请求默认值,这个属性管理器用于设置其作用范围内的所有HTTP Request默认值,包括:

  • 服务器请求或IP:请求发送的目标服务器名称或地址;

  • 端口:目标服务器的端口号,默认80;

  • 协议:箱目标服务器发送请求所采用的协议,HTTP或HTTPS,默认HTTP;

  • Content encoding:内容的编码方式

  • 路径:目标URL路径(不包括服务器地址和端口)

  • 同请求一起发送参数: 对于带参数的URL ,jmeter提供了一个简单的对参数化的方法:用户可以将URL中所有参数设置在本表中,表中的每一行是一个参数值对;

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小舞很执着/article/detail/938378
推荐阅读
相关标签
  

闽ICP备14008679号