JMeter-关联获取token的值

Posted 说笑谈古松

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JMeter-关联获取token的值相关的知识,希望对你有一定的参考价值。

1、什么是token?

Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌。

2、Token的作用

身份验证;
避免表单重复提交

3、Token和session的区别?

App以及分布式的系统用Token比较多;
session在web服务端用得比较多。

4、Token的特点

无状态、可扩展:在客户端存储的Token是无状态的,并且能够被扩展。基于这种无状态和不存储Session信息,负载均衡器能够将用户信息从一个服务器传到其他服务器上。
安全性: 请求中发送token而不再是发送cookie能够防止CSRF(跨站请求伪造)。即使在客户端使用cookie存储token,cookie也仅仅是一个存储机制而不是用于认证。
有效性:Token具有有效性,Token过期了要重新登录。

5、Token在接口测试中的应用

Token主要来用标识用户是否处于登录状态,有些接口需要登录后才有权限访问的。
在实例讲解之前,先熟悉一下Token的请求过程:
在这里插入图片描述

案例演示:

做这个题之前请先回忆token的请求过程,这个是正在使用的项目,要温柔一点对待接口,请别去频繁访问。

现有一个登录接口A,登录成功后返回一个token值。有一个获取门店信息的接口B,
但是接口B必须要保持登录才能访问。

A接口文档:

  • 访问地址:http://ums.astraea.com.au/ums/auth/login
  • 请求类型:POST
  • 请求头部: application/json
  • 请求参数:{“username”:“xx”,“password”:“e10adc3949ba59abbe56e057f20f883e”}

B接口获取门店信息的接口文档:

  • 访问地址:http://api.pos.gvt861.com/api/Shop/GetShopList
  • 请求类型:POST
  • 请求头部: application/json
  • 请求头token参数:Authorization:XXX
  • 请求参数:{“name”:"",“PageIndex”:1,“pageSize”:15}

先建好线程组:

在这里插入图片描述

这里引入一个概念,鉴权: 鉴权(authentication)是指验证用户是否拥有访问系统的权利。

我们常用的鉴权有四种:

1、HTTP Basic Authentication
2、session-cookie
3、Token 验证
4、OAuth(开放授权)

怎么确认系统是通过Token还是cookie保持登录?

1、直接问开发
2、自己抓包看一下,请求信息中没有cookie相关的信息,而且在登录的响应看看有没有token的值生成
在这里插入图片描述
在这里插入图片描述

处理Token的思路:

—>登录的接口的生成token - 用正则表达式或者JSON提取器把token取出来存放在变量中-
—>系统中的其他接口发送请求的时候在信息头把token带上。

1.首先用正则表达式提取token:

在这里插入图片描述

2、关联

在这里插入图片描述

以上是关于JMeter-关联获取token的值的主要内容,如果未能解决你的问题,请参考以下文章

JMeter接口测试——关联

jmeter压测学习3-提取json数据里面的token参数关联

JMeter笔记8 | JMeter关联

jmeter基础系列——关联

jmeter接口测试-cookie关联

JMeter性能测试正则表达式关联