• Jmeter4.0----HTTP Cookie管理器(8)


    1.说明

    在脚本编写的过程中,我们常常会遇到用户登录之后的相关操作,但是又不想去通过脚本先模拟用户登录,再使用cookie值保持登录,做后续的操作的情况下,我们就会用到HTTP Cookie管理。

    HTTP Cookie管理,主要是通过其他途径获取有效的用户登录后生成的cookie,放入HTTP Cookie管理中,在后续接口的操作中,请求会自动带上有效的cookie信息,让服务器认为,接口现在的操作是已登录有效用户,从而保证我们接口的正常运行及返回。

    首先,带大家看一下没有cookie值的脚本返回(此时未添加HTTP Cookie管理)

    ps:我这个接口,是想模拟用户登录之后获取一个页面中部分信息,但是用户登录,每次需要输入验证码,验证码又不确定,我就觉得很麻烦,暂时不想做登录处理,想跳过登录,直接做用户登录之后的操作,但是呢,脚本写好之后,悲惨的发现,用户没登录,啥都不能做,嗯~~~就像淘宝,你想下单必须先登录,我这里也是一样的,就是给我返回,登录页面,唉~~~所以,我们看接下来的操作步骤吧!

      

    2.步骤

    第一步:在浏览器中获取已登录用户的cookie值

     在浏览器中打开你要操作的网站---->登录一个有效用户---->F12(打开开发者工具)

    Application中获取自己操作的网站的cookies相关信息

    第二步:添加HTTP Cookie管理器

     线程组 (鼠标右键)---->配置元件---->HTTP Cookie管理器

     

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

    (2)Implementation履行的协议。

    (3)Cookie PolicyCookie的管理策略

    • compatibility:推荐选择此种策略。这种兼容性设计要求是适应尽可能多的不同的服务器,尽管不是完全按照标准来实现的。如果你遇到了解析 Cookies 的问题,你就可能要用到这一个规范。有太多的web站点是用CGI脚本去实现的,而导致只有将所有的 Cookies 都放入 Request header 才可以正常的工作。这种情况下最好设置 http.protocol.single-cookie-header 参数为 true
    • rfc2109:是HttpClient使用的默认Cookies协议。
    • rfc2965:定义了版本2并且尝试去弥补在版本1Cookie RFC2109 标准的缺点。规定 RFC2965 最终取代 RFC2109 发送 RFC2965 标准 Cookies 的服务端,将会使用 Set-Cookie2 header 添加到 Set-Cookie Header 信心中,RFC2965 Cookies 是区分端口的。
    • ignorecookies:此规格忽略所有 Cookie。被用来防止 HttpClient 接受和发送的 Cookie
    • netscape:是最原始的 Cookies 规范,同时也是 RFC2109 的基础。尽管如此,还是在很多重要的方面与 RFC2109 不同,可能需要特定服务器才可以兼容。
    • default:默认

    第三步:运行接口

    HTTP Cookie管理器添加配置成功之后,再运行我们的接口,就发现不再是返回登录页面,而是有正确的返回信息啦~~

     

  • 相关阅读:
    JS中iframe子页面与父页面之间通信
    .NET 大数据量并发解决方案
    angular的性能分析 -随记
    第二次作业
    自我介绍
    总结作业
    2019春第四次课程设计实验报告
    2019春第三次课程设计实验报告
    2019春第二次课程设计实验报告
    第十二周作业
  • 原文地址:https://www.cnblogs.com/Z-Queen/p/10044798.html
Copyright © 2020-2023  润新知