jmeter引用cookies进行登录实战

以jmeter登录接口为例,就下面的这个登录页面



  • 在测试之前,我们输入用户和密码先手动登录下,看看有那些网络信息,使用fiddler抓包



  • 登录发送的是这个请求,我们看下使用什么方式,以及用到那些参数

        看下图,可以看到是POST发送方式,以及包含N多cookies


  • 在下图可以看到有5个参数
  1.     Csrf_test_name:这个参数的请求值可以看到和cookies里面的csrf_cookie_name值一样,这样我们就可以从cookies中获取该参数的值
  2.     Username:用户名
  3.     Password:密码
  4.     Auto_login:请求值为1,我们先不管这个是干嘛的,到时候我们也填1
  5.     Login_submit:请求值为1,我们先不管这个是干嘛的,到时候我们也填1



  • 看下响应结果,是json类型数据,可以看到username被返回,也包含一些其它的字段信息,这里的某些信息就可以用作响应断言




好了,接下来使用jmeter来测试了,引用cookies,这也是这次分享的重点

    要确保jmeter.properties(这个文件在安装目录的bin目录下),文件里面的设置项CookieManager.save.cookies=true

  • 可以从测试计划中添加线程组,这里我定义跑100个


  • 添加HTTP Cookie管理器,默认就行不用设置
  • 添加HTTP请求,该请求是为了获取cookies


  • 添加登录接口,也是HTTP请求,注意下图标红的,就是引用cookies里面的值${COOKIE_cookie名称}

        添加请求参数

  1.         csrf_test_name ${COOKIE_cookie名称}
  2.         username 用户名
  3.         password 密码
  4.         auto_login 默认设置1
  5.         login_submit 默认设置1

  • 响应文本,我这里判断响应文中有我的用户名就行,具体定义可以自己设

  • 我这里只看登录接口的结果,所以我把查看结果树和聚合报告位置都放到了登录接口下面

  • 看响应时间,跑100个简直是无关痛痒,这里只是演示下,引用cookies登录的例子

原文地址:https://www.cnblogs.com/mawenqiangios/p/8056137.html