当前位置: 首页 > news >正文

全网最全最细的jmeter接口测试教程,建议收藏

在日常工作中,尤其是做接口测试时,我们最经常用到的两个工具,就是Jmeter和postman。今天,我们主要是讲一讲Jmeter在接口测试这一块的一些方式方法。内容比较多,大家可以收藏一下,以后慢慢学。

1)一些简介

Jmeter是由Apache公司开发的一个纯Java的开源项目,即可以用于做接口测试也可以用于做性能测试。它采用多线程,允许通过多个线程并发取样或通过独立的线程对不同的功能同时取样。

并且,Jmeter具备高移植性,可以实现跨平台运行,也可以实现分布式负载,并具备较高扩展性。是做接口测试非常实用的一款工具。

2)如何安装Jmeter?

对于真正的零基础的小伙伴来说,你可以请按如下步骤完成安装:

①安装JDK,必须JDK1.7以上的版本,推荐1.8的版本

②进入官网:http://jmeter.apache.org/download_jmeter.cgi 下载最新的Jmeter版本,下载后解压到非中文目录,如:D:\

③配置Jmeter的环境变量。

④在PATH变量的最前面加入如下变量:%JMETER_HOME%\bin;

⑤进入D:\apache-jmeter-5.2.1\bin,双击jmeter.bat,或在dos窗口输入jmeter命令打开jmeter界面,安装成功。

3)如何为Jmeter设置中文环境?

①临时设置

Jmeter菜单栏选择OptionsàChoose LanguageàChinese (Simplified)

这种方法,重启软件后又变为英文环境了。

②永久设置

进入apache-jmeter-5.2.1\bin目录,找到“jmeter.properties”文件,在文件的第37行后添加“language=zh_CN”,保存之后再打开jmeter就永久变为中文环境了。
在这里插入图片描述
4)Jmeter的主要元件有哪些?

①测试计划:是使用 JMeter 进行测试的起点,它是其它 JMeter测试元件的容器

②线程组:代表一定数量的用户,它可以用来模拟用户并发发送请求。实际的请求内容在Sampler中定义,它被线程组包含。

③配置元件:维护Sampler需要的配置信息,并根据实际的需要修改请求的内容。

④前置处理器:负责在请求之前工作,常用来修改请求的设置

⑤定时器:负责定义请求之间的延迟间隔。

⑥取样器(Sampler):是性能测试中向服务器发送请求,记录响应信息、响应时间的最小单元,如:HTTP Request Sampler、FTP Request Sample、TCP Request Sample、JDBC Request Sampler等,每一种不同类型的sampler 可以根据设置的参数向服务器发出不同类型的请求。

⑦后置处理器:负责在请求之后工作,常用获取返回的值。

⑧断言:用来判断请求响应的结果是否如用户所期望的。

⑨监听器:负责收集测试结果,同时确定结果显示的方式。

⑩逻辑控制器:可以自定义JMeter发送请求的行为逻辑,它与Sampler结合使用可以模拟复杂的请求序列。

5)Jmeter元件的作用域和执行顺序

①元件作用域

配置元件:影响其作用范围内的所有元件。

前置处理器:在其作用范围内的每一个sampler元件之前执行。

定时器:在其作用范围内的每一个sampler有效

后置处理器:在其作用范围内的每一个sampler元件之后执行。

断言:在其作用范围内的对每一个sampler元件执行后的结果进行校验。

监听器:在其作用范围内对每一个sampler元件的信息收集并呈现。

总之,从各个元件的层次结构,我们可以判断每个元件的作用域。

②元件执行顺序:

配置元件->前置处理器->定时器->取样器->后置处理程序->断言->监听器

注意事项:

前置处理器、后置处理器和断言等组件只能对取样器起作用,因此,如果在它们的作用域内没有任何取样器,则不会被执行。

如果在同一作用域内有多个同一类型的元件,则这些元件按照它们在测试计划中的上下顺序依次执行。

6)Jmeter进行接口测试流程步骤详解

①测试计划

打开Jmeter,在菜单左侧出现 “测试计划”。在这里测试计划我们可以把它理解成新建的空白项目,在这个空白项目下面可以添加一系列的接口。
IMG_259
②线程组

添加方法:右键点击Test Plan->添加->线程(用户)->线程组。

元件描述:一个线程组可以看做一个虚拟用户组,线程组中的每个线程都可以理解为一个虚拟用户。
IMG_260
(1)线程数:即虚拟用户数。设置多少个线程数也就是设置多少虚拟用户数

(2)Ramp-Up时间(秒):设置虚拟用户数全部启动的时长。如果线程数为20,准备时长为10秒,那么需要10秒钟启动20个线程。也就是平均每秒启动2个线程。

(3)循环次数:每个线程发送请求的个数。如果线程数为20,循环次数为10,那么每个线程发送10次请求。总请求数为20*10=200。如果勾选了“永远”, 那么所有线程会一直发送请求,直到手动点击工具栏上的停止按钮,或者设置的线程时间结束。

③HTTP Cookie管理器

添加方法:右键线程组->添加->配置元件->HTTP Cookie管理器。
IMG_261
④HTTP请求默认值

添加方法:右键线程组->添加->配置元件->HTTP请求默认值。

⑤HTTP请求

添加方法:右键线程组->添加->Sampler->HTTP请求。

元件描述:HTTP请求包括接口请求方法、请求路径和请求参数等。
IMG_263
⑥响应断言

添加方法:右键HTTP请求->添加->取样器->HTTP请求。

元件描述:检查接口是否访问成功。如果检查失败的话会提示找不到断言的内容,没提示的话就代表成功了。
IMG_264
⑦增加监听器

添加方法:线程组 ->右键添加 ->监听器->察看结果树。一般还会一并添加图形结果、聚合报告。

元件描述:树状形式显示接口的访问结果,包括请求结果、请求内容、服务器的响应内容。
IMG_265
7)总结

以上就是本次关于接口从测试的讲解了。

文章来源:网络 版权归原作者所有

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系小编,我们将立即处理

http://www.lryc.cn/news/389931.html

相关文章:

  • Raspbian命令行连接WiFi网络
  • 王佩丰 Excel 基础二十四讲——目录
  • Qt扫盲-QRect矩形描述类
  • Android系统adb shell怎么执行checksum 来判断文件是否变更?
  • JS中的上下文
  • 【深度学习】注意力机制
  • 安卓开发自定义时间日期显示组件
  • IT行业入门,如何假期逆袭,实现抢跑
  • Pyramid 中混合认证策略
  • 深度学习经典检测方法概述
  • <sa8650>sa8650 qcxserver-之-摄像头传感器VB56G4A驱动开发<1>
  • 推荐8款超实用的ComfyUI绘画插件,帮助我们的AI绘画质量和效率提升几个档次!
  • MATLAB-振动问题:两自由度耦合系统自由振动
  • 人工智能-NLP简单知识汇总01
  • Spring Boot中的异步编程技巧
  • 深度解密Spark性能优化之道
  • 在U盘/移动硬盘上安装热插拔式Ubuntu系统,并将Docker目录挂载到NTFS硬盘
  • 商城小程序论文(设计)开题报告
  • 15. Java的 CAS 操作原理
  • 修改element-ui日期下拉框datetimePicker的背景色样式
  • Linux—— 逻辑运算符,压缩和解压缩
  • 音视频入门基础:H.264专题(6)——FFmpeg源码:从H.264码流中提取NALU Header、EBSP、RBSP和SODB
  • STM32实现按键单击、双击、长按、连按功能,使用状态机,无延时,不阻塞
  • C#之Delta并联机械手的视觉同步分拣
  • 01:Linux的基本命令
  • GNSS 载波、测距码和导航电文的关系简介
  • deepE 定位系统卡顿问题实战(一) ----------- 锁造成的阻塞问题
  • YOLOv5改进 | 主干网络 | ODConv + ConvNeXt 增强目标特征提取能力
  • TIA博途WinCC通过VB脚本从 Excel中读取数据的具体方法介绍
  • 第5篇 区块链的技术架构:节点、网络和数据结构