JMeter 批量接口测试

2024-01-12

一、背景

最近在进行某中台的接口测试准备,发现接口数量非常多,有6、70个,而且每个接口都有大量的参数并且需要进行各种参数验证来测试接口是否能够正确返回响应值。想了几种方案后,决定尝试使用JMeter的csv读取来实现批量的接口测试。

二、脚本编写

1、添加线程组

2、添加HTTP信息头管理器

添加必须的接口信息头,比如Appid、Authorization

3、添加HTTP请求

4、添加循环控制器

5、配置csv文件

定义传入的参数名称:

num:用例编号

apiSeq:功能序号

apiName:接口功能

classify:功能模块名称

api:接口地址

function:请求方法

parameter:请求体参数

expValue:预期结果

根据测试用例填写参数,如下表所示:

6、添加csv配置文件

将变量名称num,piSeq,apiName,classify,api,function,parameter,expValue按照英文逗号隔开;因为csv首行为参数名称,在参数设置中,忽略首行设置为True,同时设置遇到文件结束符停止线程。其他参数如下图所示:

7、设置HTTP请求参数

HTTP请求名称设置为:${num}${apiSeq}${apiName};

方法设置为:${function};

路径设置为:${url};

消息体设置为:${parameter}

8、添加断言

添加json断言,根据http请求返回结果,和预期结果${expValue}进行对比。

9、添加监听器

添加查看结果树,查看最后测试结果是否正确。

三、测试结果

预期结果和返回结果一致,结果树中显示为绿色,说明断言通过。下图展示一部分 接口测试 的结果:

四、总结

本期为大家介绍了 JMeter 使用csv读取参数的方式进行批量的接口测试,在项目时间紧急,测试时间比较短的时候使用,可以提升测试的效率。同时csv方便管理,可以根据测试用例随时进行补充,提高测试覆盖范围。如果有其他更方便的方法,欢迎与小编进行讨论。

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JMeter 批量接口测试 的相关文章

  • UI自动化测试之Jenkins配置

    背景 团队下半年的目标之一是实现自动化测试 这里要吐槽一下 之前开发的测试平台了 最初的目的是用来做接口自动化测试和性能测试 但由于各种原因 接口自动化测试那部分功能整个废弃掉了 其中和易用性有很大关系 另外 也和我们公司的接口业务也有关
  • 一文从0到1手把手教学UI自动化测试之数据驱动!

    在UI的自动化测试中 我们需要把测试使用到的数据分离到文件中 如果单纯的写在我们的测试模块里面 不是一个好的设计 所以不管是什么类型的自动化测试 都是需要把数据分离出来的 当然分离到具体的文件里面 文件的形式其实有很多的 这里主要说明JSO
  • 如何从 WebDriver Sampler 中设置 JMeter Vars?

    I had previously used a CSS JQuery extractor to get a URL from a page and add it to JMeter vars accessing it here var pa
  • 使用extentreports获取jmeter测试结果

    对于任何使用 jmeter 进行 api 功能测试的人来说 报告并不是那么好 有没有人用过类似的东西http extentreports com http extentreports com 显示他们的测试结果 关于更好地显示测试结果的其他
  • 使用Java代码进行Jmeter分布式测试

    我能够使用 Java 代码运行 Jmeter 但如果我想做与分布式测试相同的操作 那么如何在 Java 代码中添加远程引擎 这是一个sample http alvinalexander com java jwarehouse jakarta
  • Jmeter:jmeter中jmeter.sh和jmeter无扩展文件的区别

    我需要澄清 jmeter sh 和 jmeter 文件 不带 ext 它们位于 bin 文件夹中 举例来说 1 如果我在jmeter和jmeter sh文件中设置不同的HEAP大小 将考虑哪一个 2 以上是否取决于我如何运行测试 例如 jm
  • 在 Jmeter 中使用 JsonPath 和 != 条件从 JSON 中提取一些值

    我有以下 JSON 我需要获取没有 type Jenkins 的实例的 id 值 data id 35002399 6fd7 40b7 b0d0 8be64e4ec09c name 94Jenkins url http 127 0 0 1
  • JMeter 在性能测试期间挂起

    我试图模拟 4 个不同用户的 100 个线程请求 所有 97 个请求均已发送和接收 但其余 3 个请求仍显示为正在执行 我必须手动停止 Jmeter 然后只传递剩余的请求 为什么会发生这种情况 您的计算机可能没有资源来执行请求 或者 Jav
  • 暂停和恢复 jmeter 执行

    我正在寻找暂停和恢复 JMeter 执行 单 多线程 的选项 1 Pausing and Resuming through command line 2 From the Jmeter UI 3 By coding in some lang
  • 如何使用 JMeter 将 application/x-www-form-urlencoded 参数发送到 RestServer?

    我开发了一个休息服务器 并将其在本地主机中运行 我尝试使用 JMeter 执行测试 发送请求帖子和获取 取决于调用的方法 我已经发送到 Rest 服务器并使用 JMeter 在简单的 post 请求 获取请求 通过 post 发送文件以及通
  • Azure 应用程序网关在进行 JMeter 负载测试时随机遇到 504 网关超时

    我有 1 个应用程序网关 它有 2 个后端 Azure VM 它通过 IIS 托管 ASP CORE REST API 两者都使用端口 80 进行通信 手动测试一切正常 直到我们使用 jmeter 进行 2500 线程 POST 请求负载测
  • HTTP2 请求示例因 Jmeter4、Java 10 无客户端 ALPNProcessors 崩溃

    我无法使用 Jmeter 4 0 创建 HTTP2 请求 我已经安装了最新的 JDK 和 HTTP 2 协议采样器插件 我还观察到 penJDK8ClientALPNProcessor e23ec5a 不适用于 java 10 0 2 尝试
  • 使用参数作为用户定义变量?

    我们在非 GUI 模式下运行测试 并传入各种参数 如服务器 端口 线程等 我们还希望在 GUI 模式下运行测试 并能够在 GUI 中更改这些参数 我想做的是使用 2 个用户定义的变量对象 其中一个包含我们可以编辑的静态数据 另一个包含参数
  • JMeter:如何访问 ForEach 控制器内的循环计数器?

    我在 JMeter 中有一个 ForEach 控制器 如何访问此控制器内循环的计数器 通过变量 然后使用它来创建新变量 Put 计数器配置元素 http jmeter apache org usermanual component refe
  • jmeter恒定视频流

    我正在使用 Jmeter 来加载测试视频流 我可以传递登录信息 但我需要让 Jmeter 在提供视频流的页面上 保持 我怎样才能做到这一点 我已经设置了 cookie 管理器 如果视频流不在您的服务器上 您根本不需要测试它 例如 如果您的网
  • 使 .jmx 文件在 Windows 10 上使用 jmeter GUI 默认打开(双击文件)

    当我双击它时 我试图让我的 Windows 10 使用 jmeter GUI 打开 jmx 文件 我使用 apache jmeter 3 2 目前 为了打开 jmx 文件 我打开 jmeter jar apache jmeter 3 2 b
  • JMeter:tearDown Thread Group的目的是什么

    我想了解JMeter中tearDown Thread Group的实际用法 在什么场景下可以使用tearDown Thread Group 根据提供的帮助JMeter 拆解线程组 http jmeter apache org userman
  • Jmeter动态生成请求的json负载

    我有一个 Jmeter 测试计划 我希望 HttpSampler 发送发布请求 请求正文应包含 Json 如下所示 productIds p1 p2 我设置了一个随机变量生成器 每次调用都会返回格式正确的 ProductId 我想做的是通过
  • 如何使用脚本在 Jmeter 容器中设置变量及其值,例如用户参数

    我需要在 Jmeter 中设置和获取变量以实现 API 自动化 我正在使用 groovy 脚本来实现同样的目的 我可以使用以下代码将键值存储在属性文件中 props put shubhamKey shubhamValue 我不想使用 mai
  • 如何使用jmeter统计失败的请求

    我在跑步JMeter我想要统计所有失败的请求 这些请求要么超时 要么只是失败 我看到一些侦听器显示出现了失败 但没有人看到有一个字段显示失败请求与成功请求的总数 有谁知道我如何轻松获取这些数据而不必手动计算每次失败 要检查失败响应的数量 请

随机推荐

  • 软件测试|Python Selenium 库安装使用指南

    简介 Selenium 是一个用于自动化浏览器操作的强大工具 它可以模拟用户在浏览器中的行为 例如点击 填写表单 导航等 在本指南中 我们将详细介绍如何安装和使用 Python 的 Selenium 库 安装 Selenium 库 使用以下
  • 华为OD机试真题-字符串拼接-2023年OD统一考试(C卷)

    题目描述 给定M 0
  • 电脑提示找不到msvcr100.dll的解决方法分享,只需四步即可搞定

    找不到msvcr100 dll 是一个常见的问题 许多人在使用计算机时都可能遇到过 这个文件是Microsoft Visual C 2010 Redistributable Package的一部分 包含了许多C运行库函数的实现 当我们在使用
  • kbdlk41a.dll文件丢失导致程序无法运行问题

    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题 如果是新手第一时间会认为是软件或游戏出错了 其实并不是这样 其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库 这时你可以下载这个kbdlk41
  • 【状态估计】电力系统状态估计中的异常检测与分类(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码及详细文
  • 基于java的扫雷游戏系统设计与实现

    基于java的扫雷游戏系统设计与实现 I 引言 A 研究背景和动机 扫雷游戏是一种经典的益智游戏 由于其简单易学 规则简单 玩法多样等特点 深受广大游戏爱好者的喜爱 但是 现有的扫雷游戏系统往往存在着游戏难度不均衡 游戏时间过长 游戏规则不
  • 软件测试|好用的pycharm插件推荐(五)——Translation

    前言 在我们的日常工作中 经常会遇到需要查看各个第三方库源码的问题 在很多情况下 我们的英语能力不能够满足我们完全读懂源码 所以我们就需要借助翻译工具来帮助我们理解第三方库的源码 如果我们将源码复制再使用其他工具翻译 会显得比较繁琐 如果有
  • 考虑极端天气线路脆弱性的配电网分布式电源配置优化模型【IEEE33节点】(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码实现
  • 华为OD机试真题-计算三叉搜索树的高度-2023年OD统一考试(C卷)

    题目描述 定义构造三叉搜索树规则如下 每个节点都存有一个数 当插入一个新的数时 从根节点向下寻找 直到找到一个合适的空节点插入 查找的规则是 1 如果数小于节点的数减去500 则将数插入节点的左子树 2 如果数大于节点的数加上500 则将数
  • KBDINUK2.DLL文件丢失导致程序无法运行问题

    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题 如果是新手第一时间会认为是软件或游戏出错了 其实并不是这样 其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库 这时你可以下载这个KBDINUK
  • 全局寻优粒子群算法MPPT仿真模型(光伏阵列多峰值特性曲线)(Simulink仿真实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Simulink仿真实现
  • AI科幻冒险电影《侏罗纪公园2:复活之战》

    AI科幻冒险电影 侏罗纪公园 复活之战 当恐龙重返地球 一个黑暗的阴谋悄然而至 一场意外的基因突变 诞生了比以往任何一种恐龙都更加强大的新品种 侏罗纪公园 复活之战 主角是一位名叫艾米丽的年轻科学家 她是恐龙复活计划的主要研究人员之一 她的
  • 【理论+实战】带你全面了解 RAG,深入探讨其核心范式、关键技术及未来趋势

    写在前面 大家好 关于RAG实战文章已经写了三篇了 有兴趣可以自行去看一下 用通俗易懂的方式讲解 在 Langchain 中建立一个多模态的 RAG 管道 用通俗易懂的方式讲解 大模型 RAG 在 LangChain 中的应用实战 用通俗易
  • KBDLA.DLL文件丢失导致程序无法运行问题

    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题 如果是新手第一时间会认为是软件或游戏出错了 其实并不是这样 其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库 这时你可以下载这个KBDLA D
  • 华为OD机试真题-围棋的气-2023年OD统一考试(C卷)

    题目描述 围棋棋盘由纵横各19条线垂直相交组成 棋盘上一共19x19 361个交点 对弈双方一方执白棋 一方执黑棋 落子时只能将棋子置于交点上 气 是围棋中很重要的一个概念 某个棋子有几口气 是指其上下左右方向四个相邻的交叉点中 有几个交叉
  • DaVinci Resolve Studio 18 Mac/win:轻松地剪辑、修剪和排列素材工具

    无论是影视制作 广告创意还是个人创作 DaVinci Resolve Studio 18都是您不可或缺的创作利器 作为世界上最先进的专业后期制作软件之一 DaVinci Resolve Studio 18凭借其强大的功能和直观的界面 成为了
  • spark相关

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 pandas是什么 二 使用步骤 1 引入库 2 读入数据 总结 前言 提示 这里可以添加本文要记录的大概内容 例如 随着人工智能的不断发展 机器学习这门
  • 软件测试|Windows系统配置pytest+allure环境教程

    前言 allure可以输出非常精美的测试报告 也可以和pytest进行完美结合 不仅可以渲染页面 还可以控制用例的执行 本文我们将介绍Windows系统中如何配置allure环境 第一步 配置Java环境 因为 allure 的运行依赖于J
  • KBDIULAT.DLL文件丢失导致程序无法运行问题

    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题 如果是新手第一时间会认为是软件或游戏出错了 其实并不是这样 其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库 这时你可以下载这个KBDIULA
  • JMeter 批量接口测试

    一 背景 最近在进行某中台的接口测试准备 发现接口数量非常多 有6 70个 而且每个接口都有大量的参数并且需要进行各种参数验证来测试接口是否能够正确返回响应值 想了几种方案后 决定尝试使用JMeter的csv读取来实现批量的接口测试 二 脚