使用Jmeter进行http接口测试

前言:

  本文主要针对http接口进行测试,使用Jmeter工具实现。

  Jmter工具设计之初是用于做性能测试的,它在实现对各种接口的调用方面已经做的比较成熟,因此,本次直接使用Jmeter工具来完成对Http接口的测试。

一、开发接口测试案例的整体方案:

  • 第一步:我们要分析出测试需求,并拿到开发提供的接口说明文档;
  • 第二步:从接口说明文档中整理出接口测试案例,里面要包括详细的入参和出参数据以及明确的格式和检查点。
  • 第三步:和开发一起对接口测试案例进行评审。
  • 第四步:结合开发库,准备接口测试案例中的入参数据和出参数据,并整理成csv格式的文件。
  • 第五步:结合接口测试案例文档和csv格式的数据文档,做接口测试案例的自动化案例开发。

二、接口自动化适用场景:

 目前设计的自动化接口测试案例有两个运行场景:

  1. 测试前置、开发自测:一个新的自动化接口测试案例开发完成后,直接发给接口对应的开发,安排在开发本地环境执行,一旦开发确认完成接口开发,就开始执行接口测试案例,基本上可以实时拿到测试结果,方便开发快速做出判断。【开发本地运行的方式就是打开JMeter工具,导入JMX文件,开始执行可。】


  2. 回归测试:开发本地测试通过后,或整个需求手工测试通过后,把自动化的接口测试案例做分类整理,挑选出需要纳入到回归测试中的案例,在持续集成环境重新准备测试数据,并把案例纳入到持续集成的job中来,这些用于回归的接口测试案例需要配置到持续集成平台自动运行。

三、接口测试环境准备

  •  Jdk1.6或以上:Java Downloads | Oracle
  •  Jmeter,下载址址:Apache JMeter - Download Apache JMeter
  •  插件的下载安装地址:JMeter Plugins :: JMeter-Plugins.org

四、创建工程:

  1、打开Jmeter:下载好Jmeter后,双击bin目录下的jmeter.bat文件:

  

  

  2、添加线程组:在“测试计划”上点击鼠标右键-->添加-->threads(Users)-->线程组,添加测试场景设置组件,接口测试中一般设置为1个“线程数”,根据测试数据的个数设定“循环次数”。

  

  3、添加“HTTP Cookie管理器”:

  

  

  4、添加“Http请求默认值”组件,当被测系统有唯一的访问域名和端口时,这个组件很好用:

  

  5、在“HTTP 请求默认值”组件配置页面,填写被测系统的域名和端口,http请求的实现包版本以及具体协议类型,线程组里的所有“HTTP Sampler”可默认使用此设置。

   

  6、在“线程组”里添加“HTTP 请求”的Sampler

  

   7、在HTTP请求设置页面,录入被测接口的详细信息,包括请求路径,对应的请求方法,以及随请求一起发送的参数列表:

   

  8、设置检查点:在被测接口对应的“HTTP 请求”上,添加“响应断言”

   

  9、在设置页面上添加对相应结果的正则表达式存在性判断即可:

  

  10、添加监听器:方便查看运行后的结果

  

   运行结果:

  

  

  上述步骤完成了一个简单测试案例的创建,复杂测试案例均在此基础上扩展完成。使用Jmeter工具开发的接口测试案例,一个子系统建议放在同一个 “测试计划”中,流程测试可以通过“线程组”来区分,这样也便于设定不同的测试数据个数。比较独立的接口,可以统一放在一个线程组内,顺序完成测试。  

  流程性接口的测试:如果要测试的接口可以组成一个流程,只需要顺序添加多个“HTTP 请求”的Sampler,各请求之间可以提取需要在上下文传递的数据作为参数,以保证流程中数据的一致性。

2023最新Jmeter接口测试从入门到精通(全套项目实战教程)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

GPTS-生成一个动漫图像GPT

介绍 GPTs是ChatGPT的定制版本,用户可以通过组合指令、知识和功能来定制用于特定任务或主题的GPT。它们可以根据需要简单或复杂,解决从语言学习到技术支持等各种事情。 创建GPTs Plus和Enterprise用户可以在chat.openai.com/create上开始创建GPTs。 您可以通过在ChatGPT上的…

BUUCTF刷题之路-web-[GXYCTF2019]Ping Ping Ping1

启动环境后,是一个简简单单的页面: 看样子是能够触发远程执行漏洞的。尝试下ping 127.0.0.1,如果有回显说明我们的想法是对的。 最近才学习的nc反弹shell。想着是否能用nc反弹shell的办法。控制服务器然后输出flag呢?于是我测试下…

Unity3d 灯光阴影开启,法线贴图出现BUG

URP项目打开灯光的阴影后,法线贴图出现BUG 解决方案:按照下图所示调整材质的选项即可

js数组中,相同id的item数据合并

原数据: const list [ {id:1, key: a}, {id:1, key: b}, {id:2, key: c}, {id:2, key: d}, ]期望数据格式 const newList [ {id:1, keyList: [a,b]}, {id:2, keyList: [c,d]}, ]// 相同id的数据合并let newList_(list ).flatten().groupBy(id).map(_.spread((..…

算法刷题-动态规划3(未完待续---------

算法刷题-动态规划3) 01背包问题最后一块石头的重量 01背包问题 一篇文章吃透背包问题 大佬讲解什么是背包问题 问题分析: 面对这么多的物品, 选择一个个地来装入背包,背包的承重量不断地增加,二维数组中,…

Python中的datetime库

1. datetime datetime是Python中用于处理日期和时间的类,它包含在datetime模块中。使用datetime类,我们可以创建表示特定日期和时间的对象,以及进行日期和时间的计算和操作。 from datetime import datetime, timedelta# 获取当前日期和时间…

最新发布 Spring Boot 3.2.0 新特性和改进

一、Spring Boot 简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。这个框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。 以下是Spring Boot的一些主要特点&#xf…

世微 舞台灯深度调光 大功率 dc-dc降压恒流驱动IC APS54083

产品描述 APS54083 是一款 PWM 工作模式,高效率、外围简单、外置功率 MOS 管,适用于 5-220V 输入高精度降压 LED 恒流驱动芯片。输出最大功率150W最大电流 6A。APS54083 可实现线性调光和 PWM 调光,线性调光脚有效电压范围 0.5-2.5V.PWM 调光频率范围 10…

MyBatis使用教程详解<上>

一. 什么是MyBatis? Mybatis是一个持久层框架,用于简化JDBC的操作MyBatis原本是Apache的一个开源项目ibatis,后来更名为MyBatis 上面我们提到了一个概念----持久层 不知道小伙伴们有没有想到五大注解的关系,类似于下图 其中MyBatis就是Mapper层的框架,是基于JDBC的封装,可以帮…

vue select选择下拉组织树,解决不出现横向滚动条

背景&#xff1a;由于项目需求需要使用下拉选择框的组织架构树 实现代码如下&#xff1a; <el-row><el-col :span"18"><el-form-item label"所属组织:" prop"groupName"><el-select v-model"dataForm.groupName"…

TDA4VM LInux SDK编译

文章目录 前言编译步骤前言 上篇TDA4VM EVM开发板调试笔记我们尝试把EVM开发板跑起来了,本篇主要记录,Linux SDK 的编译过程。 编译步骤 安装依赖: $ sudo apt-get update $ # Install packages required for builds $ sudo apt-get -f -y install \

净利下滑、市值缩水,“特卖电商第一股”唯品会夹缝求生

作者 | 艺馨 鸠白 排版 | Cathy 监制 | Yoda 出品 | 不二研究 刚刚过去的“黑色星期五”&#xff0c;跨境电商似乎“静悄悄”。 根据Adobe Analytics的数据&#xff0c;今年美国黑五线上销售额预计同比增长7.5%&#xff0c;达到98亿美元。 作为“特卖电商第一股”&#x…

竞赛选题 题目:基于深度学习卷积神经网络的花卉识别 - 深度学习 机器视觉

文章目录 0 前言1 项目背景2 花卉识别的基本原理3 算法实现3.1 预处理3.2 特征提取和选择3.3 分类器设计和决策3.4 卷积神经网络基本原理 4 算法实现4.1 花卉图像数据4.2 模块组成 5 项目执行结果6 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 基…

c语言-希尔排序

目录 一、插入排序 1、插入排序的概念 2、插入排序的逻辑实现 3、插入排序的实现 二、希尔排序 1、希尔排序概念 2、希尔排序逻辑实现 3、间隔值&#xff08;gap&#xff09;对排序的影响 4、希尔排序的实现 三、插入排序与希尔排序性能对比测试 结语&#xff1a; 前言…

Appscan安装详解

一、下载方式 方式一&#xff1a; 百度网盘链接:https://pan.baidu.com/s/1yV9nL78JEABxMTa7eHpPug 提取码:97 fm 方式二&#xff1a; 链接&#xff1a; https://pan.baidu.com/s/19TAHl8lYGmE0O753ULyzYA 密码&#xff1a;yvle 方式三&#xff1a; 链接&#xff1a;https://p…

ROC及曲线面积汇总学习

目录 ROC基础 生成模拟数据 率的计算 R语言计算测试 ROCR&#xff1a; pROC ROC绘制 单个ROC 两个ROC Logistic回归的ROC曲线 timeROC ROC基础 ROC曲线的横坐标是假阳性率&#xff0c;纵坐标是真阳性率&#xff0c;需要的结果是这个率表示疾病阳性的率&#xff08;…

采用NTC进行温度测量典型电路

本文介绍采用NTC进行温度测量典型电路。 采用NTC进行温度测量的电路有多种&#xff0c;典型的有恒流法和恒压法。在一般要求不高的应用场合&#xff0c;恒压法用的比较多&#xff0c;本文介绍一种采用恒压法进行NTC温度测量电路。 1.原理图 原理图如下图所示&#xff1a; 此…

springboot云HIS医院信息综合管理平台源码

满足基层医院机构各类业务需要的健康云HIS系统。该系统能帮助基层医院机构完成日常各类业务&#xff0c;提供病患挂号支持、病患问诊、电子病历、开药发药、会员管理、统计查询、医生站和护士站等一系列常规功能&#xff0c;能与公卫、PACS等各类外部系统融合&#xff0c;实现多…

QT linux下应用程序打包

一、应用程序app 1、应用程序的pro文件 2、 程序工作函数 3、app的UI界面 二、动态库lib 1、Lib类头文件 2、.cpp文件 三、对应用程序和动态库进行构建 1、对动态库进行qmake,然后进行构建 2、对应用程序进行qmake&#xff0c;然后进行构建 3、查看构建目录 四、编写脚本 …

RPA机器人如何解决非银企直联网银账户的数据自动采集?

数字时代来临&#xff0c;随着全球信息化水平的不断提升&#xff0c;企业们纷纷向自动化办公、数字化转型靠拢。财务部门作为一个企业的重要部门&#xff0c;承担着管理和监控公司所有项目的重要职责&#xff0c;因而一直被视为企业数字化转型的重要突破口。 由于企业经营理念和…