聊一聊Jmeter与多接口测试

背景

前面两篇聊过了 JMeter 的 简单使用 和 参数化,主要都还是单接口的。

很多时候,一个业务要走完,它会依赖多个接口,而且这些接口会有依赖性。

好比说,我想查询一个订单信息,那么大前提肯定是我已经下单了,并且拿到了订单号我才可以去查。

像这个场景就会有下单接口和查询订单两个接口,并且查询订单接口会依赖于下单接口。

所以下面来看看多接口的情况下我们怎么用 JMeter 来实现自动化测试。

场景接口

在这里的话,老黄没有虚拟一个场景,用的是步骤一步骤二和步骤三来代替。

它们的流程大概如下:

  1. 调用步骤一接口,会返回一个 data 字段

  2. 根据步骤一返回的 data 字段,去调用步骤二的接口,会返回一个 data 字段

  3. 根据步骤二返回的 data 字段,去调用步骤三的接口

下面是各接口定义

步骤一

请求:

POST http://localhost:8532/auto/step1
Content-Type: application/json{"str":"123","r":"456"
}

响应:

{"code":0,"msg":"ok","data":"step1"}

步骤二

请求:

POST http://localhost:8532/auto/step2
Content-Type: application/json{"str":"123","r":"step1"
}

响应:

{"code":0,"msg":"ok","data":"step1+step2"}

步骤三

请求:

POST http://localhost:8532/auto/step3
Content-Type: application/json{"str":"123","r":"step1+step2"
}

响应:

{"code":0,"msg":"ok","data":"step1+step2+step3"}

步骤一处理

添加一个 HTTP 请求,进行相关的参数设定。

同时还要添加一个 JSON Extractor 的后置处理器

添加这个处理器的目的就是为了获取到接口返回的 data 字段。

这里的配置和前面的 JSON 断言其实差不多,都是定义一个参数名和 JSON 节点的路径就可以了。

到这里的话,步骤一的接口就可以了。

下面是步骤二,要怎么用步骤一返回的结果数据。

步骤二处理

步骤二也是一个 HTTP 请求,所以这里也是添加,不一样的地方是参数这一块。

可以看到,这里是直接把步骤一的 JSON Extractor 里面定义的变量名拿过来用了。

用法和参数化的方式差不多。这里继续复刻步骤一的 JSON Extractor,提取步骤三需要的内容。

步骤三处理

同样是添加一个 HTTP 请求,参数配置和步骤二类似。

换的是步骤二的变量名。

步骤三还要加一个 JSON 断言,确定返回的 data 是期望值。

到这里,有依赖性的多接口测试其实已经配置好了。

最后就是添加一个查看结果树,看对应的结果。

写在最后

对于多接口测试,老黄认为这里的核心的关键点会是后置处理器这一块内容,通过它可以很方便的拿到接口返回的内容。

试想一下,一个相对稳定业务,测试同学配置好这些接口的用例和流程。

只要开发同学调整了接口,通过 Jenkins 更新到测试环境后,就会自动跑测试同学定义的 Jmeter 脚本,就可以很轻松的知道这次更新会不会出现明显的问题。

这样的话可以节省很多不必要的时间。

但是呢,不建议刚起来的业务去做这些内容,因为多变,脚本会经常变,吃力不讨好!

最后的话,老黄把 JMeter 系列的内容都放在 github 了,方便大家查阅和测试。

https://github.com/catcherwong/JmeterSample

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/302561.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大数据时代,还不认识这些数据分析工具?

在大数据时代的现今,数据庞大且繁杂,因此,如何有效利用它们,达到资源不浪费的目的成为了相关工作者思考的问题,于是数据分析就应运而生。在实际生活中,数据分析已经成为人们作出判断和采取行动的基石。比如…

C# 强大的新特性 Source Generator

C# 强大的新特性 Source GeneratorIntro微软在 .NET 5 中引入了 Source Generator 的新特性,利用 Source Generator 我们可以在应用编译的期间根据当前编译信息动态生成代码,而且可以在我们的 C# 代码中直接引用动态生成的代码,从而大大减少重…

为什么Kubernetes从节点会join失败

有段时间没有鼓捣Kubernetes了,今天重置Kubernetes集群后,slave节点不能加入master节点了,我把问题和解决方案分享给大家。我本地的Kubernetes集群包括一个主节点和一个从节点,如下图:问题主节点启动后,从节…

SharePoint 2007 Select People and Groups中搜索不到其他Domain账户的问题[已解决]

问题描述: 在一个SiteCollection中添加用户的时候发现来自另外一个Domain的账户无法添加。我们要添加NNEAS\HIKC到当前网站并赋予Full Control权限。但是当点击Add Users后发现在弹出的Select People and Groups中搜索不到这个用户,导致无法添加成功。仅…

推荐7个高质量的学术公众号

全世界有3.14 % 的人已经关注了数据与算法之美在这个知识千变万化的时代,只有不断学习、充实自我,才能跟上时代。以下几个优质公众号,能让你在闲暇的时候,扩宽视野。考虑到有些人可能还不知道这些号,今天给大家都一一列…

WPF 用装饰器制作抽屉效果

wpf实现抽屉效果,一般就一个动画显示就完事了,我这用到了,就研究了一下,用装饰器给控件添加遮罩层,然后在上面添加抽屉控件,虽然麻烦了点,也算是自己研究的成果了。看看效果:下面就看…

【转】缅怀红薯精神

2019独角兽企业重金招聘Python工程师标准>>> 爱憎分明的阶级立场 红薯一心向着osc,他把osc比作母亲,把自己的生命看成是osc和网民的,无论遇到怎样艰难复杂的情况,都“坚决听osc的话,一辈子跟osc走”&#x…

WPF实现Android菜单动画

WPF开发者QQ群&#xff1a; 340500857 欢迎转发、分享、点赞&#xff0c;谢谢大家~。 效果预览&#xff1a;一、MainWindow.xaml代码如下&#xff1a;<Grid><Grid.Background><ImageBrush ImageSource"background.png"/></Grid.Background>…

程序框图计算机算法语言应用,数学之算法与程序框图

原标题&#xff1a;数学之算法与程序框图1、算法的定义&#xff1a;广义的算法是指完成某项工作的方法和步骤&#xff0c;现代意义的算法是指可以用计算机来解决的某一类问题的程序和步骤&#xff0c;这些程序或步骤必须是明确和有效的&#xff0c;而且能够在有限步之内完成。2…

arcgis批量处理nc文件_气象数据处理——nc文件

数据说明NetCDF(network Common Data Form)网络通用数据格式是一种面向数组型并适于网络共享的数据的描述和编码标准。目前&#xff0c;NetCDF广泛应用于大气科学、水文、海洋学、环境模拟、地球物理等诸多领域。用户可以借助多种方式方便地管理和操作 NetCDF 数据集。NetCDF全…

一千个不用 Null 的理由

全世界有3.14 % 的人已经关注了数据与算法之美港真&#xff0c;Null 貌似在哪里都是个头疼的问题&#xff0c;比如 Java 里让人头疼的 NullPointerException&#xff0c;为了避免猝不及防的空指针异常&#xff0c;千百年来程序猿们不得不在代码里小心翼翼的各种 if 判断&#x…

快速打造一个MINI自动发布系统

前情提要&#xff1a;因为项目特点&#xff0c;需要在自己的服务器上集成测试&#xff0c;而不是用github的DevOpt体系&#xff1b;再有就是服务器是windows的&#xff1b;项目仓库在github上&#xff1b;并且项目是asp.net core的项目&#xff1b;开发人员一枚。以前的做法就是…

话里话外:ERP与PDM、MES的关系区别是什么

博主推荐延展咨询资深顾问梁云文章 ERP、PDM、MES这几个名词既会以独立的管理理念存在&#xff0c;也会在不同的管理软件中存在&#xff0c;而管理理念和管理软件是不同的。本文将抛开软件本身&#xff0c;从管理理念和原理的角度入手&#xff0c;分析上述三个概念之间的关系。…

考试必错规则:如果你觉得题目很简单,代表你肯定错了

全世界有3.14 % 的人已经关注了数据与算法之美1曾经的考试生涯以前考试的时候&#xff0c;老师经过我旁边我都会盖住答案&#xff0c;因为害怕老师看到我那些愚蠢的答案……&#xff08;via屌絲打分蜻蜓隊長&#xff09;2当我中学第一次进入KTV时&#xff0c;我就知道我注定属于…

aspnetcore 应用 接入Keycloak快速上手指南

登录及身份认证是现代web应用最基本的功能之一&#xff0c;对于企业内部的系统&#xff0c;多个系统往往希望有一套SSO服务对企业用户的登录及身份认证进行统一的管理&#xff0c;提升用户同时使用多个系统的体验&#xff0c;Keycloak正是为此种场景而生。本文将简明的介绍Keyc…

隐藏在数学中的哲理,令人回味无穷

全世界有3.14 % 的人已经关注了数据与算法之美人们在欣赏优美的数、式和数学图形时&#xff0c;将其与现实生活联系&#xff0c;引入到人们的精神世界中&#xff0c;产生丰富的联想和创造&#xff0c;反映出人们崇高的思想境界和要求&#xff0c;因而产生了风格独特、内涵深刻、…

无源的nfc加传感_基于ON Semiconductor SPS无源温度标签,应用于冷链运输的 UHF 标签读取器方案...

冷链&#xff0c;即冷冻冷藏供应链的简称&#xff0c;泛指冷藏冷冻类食品从原材料供应物流、食品工厂内生产物流、贮藏运输物流至贩卖销售物流等&#xff0c;各个环节中始终处于规定的低温环境下&#xff0c;以保证食品质量&#xff0c;减少食品损耗的一项系统工程 。随着科学技…

前端老弟第一次写后端,崩了!

幽默轻松小知识&#xff0c;一起来看看老弟第一次写的后端代码&#xff0c;你觉得如何&#xff1f;大家好&#xff0c;我是鱼皮&#xff0c;今天分享我的老弟第一次写后端代码时出现的囧事&#xff0c;希望大家引以为戒。孽起我的老弟小阿巴&#xff0c;目前大一&#xff0c;自…

Windows Phone 7 系统主题颜色RGB和Hex值

Windows Phone 主题是背景色与个性色的组合。背景色是背景的颜色&#xff0c;个性色是应用于控件和其他可视元素的颜色。有两种背景选项可供使用&#xff08;深色和浅色&#xff09;&#xff0c;另外共有 10 种标准个性色可用于您的应用程序。 下表列出了 10 种标准个性色及其以…