• JMeter (十四) Cookie & Session


    Jmeter 工作原理:  

      JMeter可以作为Web服务器与浏览器之间的代理网关,以便捕获浏览器的请求和Web服务器的响应,这样就很容易地生成性能测试脚本,

    有了性能测试脚本,JMeter就可以通过线程组来模拟真实用户对Web服务器的访问压力,这与LoadRunner的

    工作原理基本一致。

      原理如图:

      

    一、Cookie

      为了达到真正意义的并发,让每个线程模拟一个全新的用户,那Jmeter需要添加缓存与cookies管理器,清除缓存和cookies,设置如下:

      

      

      

      每次反复清除Cookies?:选择后,则每次线程组运行时,都会清除 cookie。PS:若是手动添加的cookie,则不会被清除。  

      Implementation:履行的协议。

      Cookie Policy:Cookie的管理策略。有如下几种可选项:

        compatibility:推荐选择此种策略。这种兼容性设计要求是适应尽可能多的不同的服务器,尽管不是完全按照标准来实现的。如果你遇到了解析 Cookies 的问题,你就可能要用到这一个规范。有太多的web站点是用CGI脚本去实现

          的,而导致只有将所有的 Cookies 都放入 Request header 才可以正常的工作。这种情况下最好设置 http.protocol.single-cookie-header 参数为 true。

        rfc2109:是HttpClient使用的默认Cookies协议。

        rfc2965:定义了版本2并且尝试去弥补在版本1中 Cookie 的 RFC2109 标准的缺点。规定 RFC2965 最终取代 RFC2109 发送 RFC2965 标准 Cookies 的服务端,将会使用 Set-Cookie2 header 添加到 Set-Cookie Header 信心中,

          RFC2965 Cookies 是区分端口的。

        ignorecookies:此规格忽略所有 Cookie。被用来防止 HttpClient 接受和发送的 Cookie。

        netscape:是最原始的 Cookies 规范,同时也是 RFC2109 的基础。尽管如此,还是在很多重要的方面与 RFC2109 不同,可能需要特定服务器才可以兼容。

        default:默认。

    二、Session

      添加方式:线程组-前置处理器 -HTTP URL 重写修饰符,如下图:

      

      有些tomcat的session实现不是通过cookie的,而是通过session id的,就是说,用户登录有了session之后,tomcat就会维护一个sessonid,然后每次request的时候,要求每个http request的URL都要带上这个session id.
    在tomcat中,使用URL Re-writing mode,URL是这样的:http://192.168.0.2:8080/easy/login.ec;jsessionid=410C3D3946535635683D662DF74A00AC,所以,这里我们需要设置会话参数名称为:jsessionid,Jmeter就会到URL里面按照这个参数去把上面那个sessionid抓下来,然后每次request都带上这个东西,需要注意,“路径扩展(使用;作分隔符)”这里还要将勾上,因为如上,tomcat的URL Re-writing中sessionid是以分号的方式加在URL上的,所以需要勾上这个选项,有些web server这个session和普通的URL parameter一样,是以?和&这种方式加上去的,这种情况这个checkbox就不用勾了。

  • 相关阅读:
    ionic之样式bar-assertive
    (?m) 可以让.去匹配换行
    perl 正则前导字符
    ionic之样式bar-energized
    ionic之样式bar-balanced
    ionic之样式bar-calm
    perl /m
    sort_buffer_size:
    Filter plugins ? mutate:
    Codec plugins ? multiline
  • 原文地址:https://www.cnblogs.com/Lydia25/p/9959423.html
Copyright © 2020-2023  润新知