博客
关于我
jmeter压测学习15-setUp线程组实现用户先登录
阅读量:470 次
发布时间:2019-03-06

本文共 902 字,大约阅读时间需要 3 分钟。

JMeter 接口测试前置登录与 token 提取

在接口测试中,很多接口都需要用户先登录才能访问。虽然登录是前置操作,但我们的测试关注点始终是目标接口。对于 Python 的 unittest 和 pytest 框架,前置操作通过 setUp 概念实现,而 JMeter 中也有 setUp 线程组可以完成前置准备工作。

我们需要测试的是查询用户个人信息接口 /api/v1/userinfo,但该接口需要用户登录的 token 才有权限访问。因此,前置操作就是先执行登录,获取 token。

在测试计划中,新增 setUp 线程组。首先,在 setUp 线程组前面添加 HTTP 请求默认值,配置环境信息。接着,在 HTTP 信息头管理器中添加 POST 接口,设置 Content-Type: application/json(具体参考前文文章)。然后,新增 HTTP 请求,添加登录接口的相关信息。

运行后可在结果树中观察到登录成功,返回的完整 JSON 内容如下:

{  "code": 0,  "msg": "login success!",  "username": "test",  "token": "b6b3545d53881d5e95430572bb43a5c995e462ce"}

接下来,添加后置处理器 JSON 提取器,将 token 提取出来,并设置变量名称为 token。提取的变量仅在当前线程组可引用,因此需要将其设置为系统的全局变量。为此,添加 BeanShell 后置处理程序,将提取的 ${token} 参数设置为全局属性,属性名称为 token_global

使用 ${__setProperty(token_global,${token},)}$ 语句实现这一点。

然后,新增一个测试线程组,在头部管理器中添加 token 引用属性,使用 ${__P(token_global,)}$ 表示引用全局属性。

接着添加需要测试的个人信息接口访问路径,运行后可在请求头中查看是否已成功关联。

最后,建议在测试完成后添加 tearDown 线程组,进行数据清理操作。

转载地址:http://brlbz.baihongyu.com/

你可能感兴趣的文章
OpenResty(5):Openresty 模板渲染
查看>>
OpenSearch 使用二三事
查看>>
OpenSessionInView模式
查看>>
openshift搭建Istio企业级实战
查看>>
OpenSLL
查看>>
Openssh Openssl升级
查看>>
openssh 加固
查看>>
OPENSSH升级为7.4
查看>>
ViewPager切换滑动速度修改
查看>>
OpenSSL 引入了新的治理模式和项目,来增强社区参与和决策
查看>>
openssl内存分配,查看内存泄露
查看>>
OpenSSL创建SSL证书
查看>>
openssl在cygwin下编译错误:CPU不支持x86_64(CPU you selected does not support x86-64 instruction set )
查看>>
openssl安装
查看>>
openssl安装
查看>>
OpenSSL生成root CA及签发证书
查看>>
Openstack CLI命令管理私有云主机实战(附OpenStack实验环境)
查看>>
openStack instance error 恢复
查看>>
openstack instance resize to
查看>>
openstack message queue
查看>>