如何使用Jmeter进行http接口测试?

目录

前言:

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

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

三、接口测试环境准备

四、创建工程:

总结:


前言:

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

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

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

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

jmeter接口测试视频教程:

阿里大佬倾情演绎,3天让你学会Jmeter接口测试,学不会算我输_哔哩哔哩_bilibiliicon-default.png?t=N5F7https://www.bilibili.com/video/BV1Q84y1K7bK/?spm_id_from=333.999.0.0

 

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

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

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


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

三、接口测试环境准备

  •  Jdk1.6或以上
  •  Jmeter,下载址址:
  •  插件的下载安装地址:

四、创建工程:

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

  

  

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

  

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

  

  

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

  

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

   

 jmeter接口测试视频教程:

阿里大佬倾情演绎,3天让你学会Jmeter接口测试,学不会算我输_哔哩哔哩_bilibiliicon-default.png?t=N5F7https://www.bilibili.com/video/BV1Q84y1K7bK/?spm_id_from=333.999.0.0

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

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

   

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

   

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

  

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

  

   运行结果:

  

  

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

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

总结:

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

我个人整理了我这几年软件测试生涯整理的一些技术资料,包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。欢迎大家点击下方名片免费领取,千万不要错过哦。

                                                        

 

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

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

相关文章

1.2 Scala变量与数据类型

一、变量声明 (一)、利用val声明变量 案例演示 (二)利用var声明变量 案例演示 (三)换行输入语句(续行) (四)同时声明多个变量 Scala还可以将多个变量放在一起…

射频电路layout总结

射频电路板设计由于在理论上还有很多不确定性,因此常被形容为一种“黑色艺术”,但这个观点只有部分正确,RF电路板设计也有许多可以遵循的准则和不应该被忽视的法则。在实际设计时,真正实用的技巧是当这些准则和法则因各种设计约束…

RTU遥测终端机的应用场景有哪些?

遥测终端机又称智能RTU遥测终端机,是一种用于采集、传输和处理遥测数据的设备。在现代科技的发展中,遥测终端机扮演着重要的角色。它是一种能够实现远程监测和控制的关键设备,广泛应用于各个领域,包括水文水利、环境监测、工业自动…

创新案例|专注在线 协作平台 设计产品中国首家PLG独角兽企业蓝湖如何实现98%的头部企业渗透率

蓝湖起步于2015年,是一款服务于产品经理、设计师、工程师的产品设计研发在线协作工具, 2021年10月,蓝湖宣布完成C轮融资,融资额高达10亿人民币,称为中国2B市场中首家采用PLG发展的独角兽企业,并实现了从100…

Web 自动化测试Selenium 之PO 模型

目录 1. po 模型介绍 2. PageObject 设计模式 3. PO 的核心要素 4. 非PO 实现 5. PO 实现 6. 总结 7. PO 模式的特点 总结: 1. po 模型介绍 在自动化中,Selenium 自动化测试中有一个名字经常被提及 PageObject (思想与面向对象的特征相同)&#x…

MySQL数据库高级操作

目录 MySQL中6种常见的约束克隆表清空表的数据记录临时表创建外键约束,保证数据的完整性和一致性。 MySQL中6种常见的约束 主键约束(primary key)外键约束(foreign key)非空约束(not null)唯一…

安卓端Google隐私沙盒归因报告聚焦

自2022年2月Google首次提出将推出隐私沙盒至今已一年有余。现在,安卓端的隐私沙盒Beta测试已针对特定Android13设备正式开始。作为早期测试者,Adjust很高兴与 Google一同迈出增强用户隐私的第一步,并在接下来的旅程中继续携手同行。为帮助移动…

opencv初学记录

准备工作: 1.找一张图片 2.准备python运行环境,并导入库,pip install opencv-python 读取文件,并打印维度 import cv2 #为什么是cv2不是cv呢,这个2指的是c的api,是为了兼容老板,cv指的就是c&am…

今天面了一个来字节要求月薪23K,明显感觉他背了很多面试题...

最近有朋友去字节面试,面试前后进行了20天左右,包含4轮电话面试、1轮笔试、1轮主管视频面试、1轮hr视频面试。 据他所说,80%的人都会栽在第一轮面试,要不是他面试前做足准备,估计都坚持不完后面几轮面试。 其实&…

ChatGPT/InstructGPT详解

前言 GPT系列是OpenAI的一系列预训练文章,GPT的全称是Generative Pre-Trained Transformer,顾名思义,GPT的目的就是通过Transformer为基础模型,使用预训练技术得到通用的文本模型。目前已经公布论文的有文本预训练GPT-1&#xff…

【操作系统】计算机操作系统知识点总结

文章目录 前言一、操作系统的概念与发展二、操作系统的结构与功能1、操作系统的结构2、操作系统的功能 三、进程管理1、进程2、进程的创建3、进程管理的实现4、进程控制块 四、内存管理1、内存2、内存管理3、内存管理的实现 五、文件系统1、文件系统2、文件系统的主要任务3、文…

Java开发 - 带你了解集群间的相互调用,你还在等什么?

目录 前言 导读 项目准备 集群准备 父工程引入子项目 服务调用方HelloService准备 pom文件 yml文件 Controller文件 服务提供方HelloWorld准备 pom文件 yml文件 Controller文件 运行此两个工程 hello_world组集群 集群调用测试 RestTemplate换成Dubbo行不行…

Word 2021入门指南:详细解读常用功能

软件安装:办公神器office2021安装教程,让你快速上手_正经人_____的博客-CSDN博客 一、 新建文档 打开Word 2021后,可以看到左上角的“文件”选项,点击它,在弹出的菜单中选择“新建”选项。然后可以选择空白文档或者使…

Linux安装和配置VCenter

Linux安装和配置VCenter 以下演示安装 Linux VCenter,也就是使用VMware-VCSA-all-6.7.0-13010631.iso 镜像包。通过一台 Windows服务器远程连接 ESXI 服务器安装 Linux 版本的 VCenter。也就是Windows 服务器只是安装的界面的一个载体。 Linux VCenter环境搭建 下…

网络安全入门学习第十七课——PHP数组

文章目录 一、索引数组二、关联数组三、数组定义1、多维数组2、赋值方式3、短数组定义法([ ] PHP 5.4起增加的) 四、访问数组五、遍历数组1、使用 for 循环2、foreach语句遍历 六、合并两个数组1、“”联合运算符2、array_combine 函数 七、数组排序函数八、数组增删…

低成本开发专属小程序支持自定义开发设计

传统定制开发小程序成本高,还需要不断地沟通和交流才能一步步地去实现你想要的功能和效果,那么除了传统的定制开发小程序外,用户其实还可以选择使用模板开发小程序,不仅能实现小程序的所有基础功能,还不用编程维护和开…

基于html+css的图展示128

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

Rust语言从入门到入坑——(3)小谈Cargo工具以及VScode配置Rust

文章目录 0 引入1、Cargo 是什么2、常用Cargo指令3、VScode配置Rust环境3.1.tasks.json3.2.launch.json 4、总结 0 引入 上一节我们谈了在编译工程的时候用到Cargo(卡狗) 1、Cargo 是什么 Cargo 是 Rust 的构建系统和包管理器。 Rust 开发者常用 Carg…

AI翻唱整合

感谢阅读 不完全原创声明环境部署下载工具包安装人声背景音分离工具分离消除脏数据(比如杂音)准备自己的声音预处理完工效果参考 不完全原创声明 本人使用了多个第三方软件,并修改了一部分代码使得其可以在PC上训练,如有侵权请联…

《项目实战》构建SpringCloud alibaba项目

文章目录 1、概要2、整体架构流程2.1、技术结构组成部分 3、技术名词解释4、技术细节4.1、构建父工程4.1.1、选择构建Maven项目4.1.2、修改父工程文件4.1.3、修改父工程pom.xml配置4.1.3.1、添加springboot支持4.1.3.2、修改JDK版本、编码、springboot版本配置4.1.3.3、添加Spr…