Jmeter接口测试之参数传递(十三)
在接口自动化测试中,经常会遇到的一种场景就是参数的场景,比如在用户列表中获取所有的用户列表,然后获取到某一个用户的ID,查看该用户的详细信息。首先在这里理清思路,它的流程是,首先获取到数据,然后在Jmeter中,通过后置处理器中的jp@gc - JSON Path Extractor把响应数据中的需要处理的数据单独的取出来,定义成一个变量,然后在下个接口调用的时候,把该变量的值传进去,就能够解决动态参数传递这样的一个问题。这里以网易云平台为案例,在这里实现的是在网易云平台搜索“无涯课堂”,搜索后,把课程到ID获取后,然后查看该课程的详情信息。
首先启动Jmeter,在测试计划中创建线程组,和在线程组下面创建简单控制器,命名为机构搜索,在网易云平台首先搜索”无涯课堂“,见搜索后返回的响应数据,如下图所示:
在刚才创建的简单控制器中创建HTTP信息头管理器,把需要的请求头添加,具体见如下图添加的请求头信息:
然后添加机构搜索的接口用例,见接口用例的信息:
下来获取无涯课堂机构里面的课程ID,在该接口用例中添加后置处理器中的jp@gc - JSON Path Extractor,把获取到的课程ID定义成一个变量,见获取课程的ID并且定义成变量的信息,如下图所示:
获取到课程的ID后,下来请求查看该课程的详情信息,它的接口是GET请求,再次创建简单控制器,在里面添加查看课程详情的用例,在用例的URL中调用获取到的课程ID的变量,如下图所示:
这样我们就实现了动态参数的传递,其实它的实现思路也是非常简单的。执行成功后,就可以在课程详情接口用例中就可以看到该课程的详细信息了,如下图所示:
Jmeter接口测试之参数传递(十三)的更多相关文章
- Jmeter多接口测试之参数传递
接口测试包含单接口测试和多接口测试,通过组合多个接口实现一组功能的验证称为多接口测试,单接口重在单个接口多种请求组合的响应断言,多接口重在组合不同接口,实现流程的串联和验证.多接口测试涉及到接口之间参 ...
- Jmeter接口测试之用例数据分离
之前我们的用例数据都是配置在 Jmeter Http 请求中,每次需要增加,修改用例都需要打开 jmeter 重新编辑,当用例越来越多的时候,用例维护起来就越来越麻烦,有没有好的方法来解决这种情况呢? ...
- Jmeter接口测试之案例实战
Jmeter是apacheg公司基于Java开发的一款开源的压力测试工具,安装Jmeter之前先安装Jdk,具体JDK安装和环境变量配置自行百度.这里不概述. 1.添加线程组 测试计划->添加- ...
- Jmeter接口测试之案例实战(十一)
在前面的知识体系中详细的介绍了Jmeter测试工具在接口自动化测试中的基础知识,那么今天更新的文章主要是对昨晚的上课内容做个总结. 首先来看Jmeter测试工具在图片上传中的案例应用.首先结合互联网产 ...
- Jmeter接口测试之参数化(十)
在接口测试中,某些时候一些场景会使用到参数化的场景,参数化简单的说就是同一个请求需要不同的数据,比如在性能测试中需要并发多个用户的场景,这样的目的是为了模拟真实的用户场景,需要模拟不同的账号,这里就需 ...
- Jmeter接口测试之用户自定义变量(九)
在使用Jmeter做接口自动化测试中,经常会使用到公共的数据,那么就需要对这些公共的数据分离出来,不管是基于测试框架的思想,还是使用工具来进行做自动化测试,公共数据的分离首先是需要思考的.这里就以获取 ...
- jmeter接口测试之登录测试
注册登录_登陆接口文档 1.登录 请求地址: POST xxxxxx/Home/Login 请求参数: args={ LoginName:"mtest", // 登录名,可以为 ...
- Jmeter接口测试之Get请求
[一] 在测试计划下面添加一个线程组---------->在线程组下面分别添加HTTP请求.响应断言.BeanShellPreProcessor.察看结果树.聚合报告等内容. [二] 将使用的协 ...
- Jmeter 接口测试之MD5加密函数(函数助手篇)
转自:https://blog.csdn.net/hhyangel372/article/details/81571058 本文给大家介绍一下如何使用Jmeter自带的函数对常量和变量进行简单的加密处 ...
随机推荐
- VirtualBox上使用kubeadm安装Kubernetes集群
之前一直使用minikube练习,为了更贴近生产环境,使用VirtualBox搭建Kubernetes集群. 为了不是文章凌乱,把在搭建过程中遇到的问题及解决方法记在了另一篇文章:安装Kubernet ...
- Mariadb 修改root密码及跳过授权方式启动数据库
默认情况下,yum方式新安装的 mariadb 的密码为空,在shell终端直接输入 mysql 就能登陆数据库. 如果是刚安装第一次使用,请使用 mysql_secure_installation ...
- mysql 存储过程 执行存储过程修改了表中所有行的信息
存储过程中的where条件语句,如果传入的参数和表字段名相同,存储过程就会把这个约束条件忽略.小结:存储过程中传递的参数名不要和字段名相同.特别是修改.删除等操作,可能会对整张表产生影响.后果会很严重 ...
- Ubuntu 18.04安装搜狗输入法
Ubuntu 18.04安装搜狗输入法 打开 terminal,输入 fcitx,检查是否安装搜狗输入法依赖,若提示未安装使用以下命令安装 sudo apt-get install fcitx-bin ...
- Nginx + uWSGI部署中的一些小坑
1.invalid host in upstream报错 重新启动nginx : sudo /etc/init.d/nginx restart 原因是在配置负载均衡nginx.conf配置文件时,发现 ...
- Keras在MNIST实现LeNet-5模型训练时的错误?
当使用Keras API 训练模型时,训练时报错? UnknownError (see above for traceback): Failed to get convolution algorith ...
- Win32 按钮嵌套收不到消息解决记录
太长不看 SetWindowSubClass,然后 return DefSubclassProc(hWnd, uMsg, wParam, lParam);,不要有 WS_CHILD 这个 Style. ...
- 一起了解 .Net Foundation 项目 No.16
.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. Orchard CMS O ...
- Xcode调试之exc_bad_access以及 message sent to deallocated instance
如果出现exc_bad_access错误,基本上是由于内存泄漏,错误释放,对一个已经释放的对象进行release操作.但是xcode有时候不会告诉你错误在什么地方(Visual Studio这点做得很 ...
- 【转】JS内置对象方法
String内置对象的方法 1. concat() concat() – 将两个或多个字符的文本组合起来,返回一个新的字符串 var str = "Hello"; var out ...