博客
关于我
jmeter压测学习15-setUp线程组实现用户先登录
阅读量:471 次
发布时间: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/

你可能感兴趣的文章
python利用excel分析过杀漏失
查看>>
python判断汉字数目
查看>>
python判断文件是空的,如果是空的,就删除
查看>>
python判断密码是否正确_python密码判断是否符合要求的方法
查看>>
python判断字符串包含中文_Python 判断字符串是否包含中文
查看>>
python删除第一行_Python 乱码指北:一行删掉根目录
查看>>
Python删除列表元素的三种方法
查看>>
python初步学习-python数据类型-集合(set)
查看>>
python列表生成字典_Python中将字典转换为列表的方法
查看>>
python列表对应元素合并为列表及判断一个列表是几维
查看>>
python+flask计算机毕业设计骨科门诊患者档案管理系统(程序+开题+论文)
查看>>
python+flask计算机毕业设计高校体测管理系统的设计与实现(程序+开题+论文)
查看>>
python+flask计算机毕业设计高校体育赛事系统(程序+开题+论文)
查看>>
python+flask计算机毕业设计高校危化品管理系统(程序+开题+论文)
查看>>
python+flask计算机毕业设计高校校园线上跳蚤市场的系统设计(程序+开题+论文)
查看>>
python+flask计算机毕业设计高校疫情防控管理平台(程序+开题+论文)
查看>>
Python+Jenkins+Allure Report接口自动化测试持续集成
查看>>
python+locust电商全流程性能测试
查看>>
Python函数运行的可执行文件的终端输出如何以一般方式静音?
查看>>
Python+Pytest+Allure+Git+Jenkins接口自动化框架
查看>>