jmeter接口测试(入门篇)

本文详细介绍JMeter压力测试工具在接口测试中的应用,包括安装、基本元件解释及简单实例演示,帮助读者快速掌握JMeter的基本操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文主要讲解下jmeter测试工具在接口测试方面的应用,帮忙大家了解下jmeter测试工具的基本使用!

一、jmeter简介

JMeter是Apache组织开发的基于Java的压力测试工具。具有开源免费、框架灵活、多平台支持等优势。除了压力测试外,JMeter在接口测试方面也有广泛的应用。

二、jmeter安装

1、安装jdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2、下载jmeter工具:http://jmeter.apache.org/download_jmeter.cgi
下载后直接打开\apache-jmeter-5.0\bin,运行jmeter.bat

三、jmeter测试计划原件讲解

1、Test Plan (测试计划):用来描述一整个测试项目,包含与本次测试所有相关的功能。也就说本次测试的所有内容是于基于一个计划的。
右键单击“测试计划”弹出菜单:
在这里插入图片描述

2、Threads (Users)线程 用户
虽然有三个添加线程组的选项,名字不一样, 创建之后,其界面是完全一样的。之前的版本只有一个线程组的名字。现在多一个setUp theread Group 与terDown Thread Group
在这里插入图片描述

  1. setup thread group
    一种特殊类型的ThreadGroup的,可用于执行预测试操作。这些线程的行为完全像一个正常的线程组元件。不同的是,这些类型的线程执行测试前进行定期线程组的执行。setUp Thread Group类似于lr的init.可用于执行预测试操作。

  2. teardown thread group.
    一种特殊类型的ThreadGroup的,可用于执行测试后动作。这些线程的行为完全像一个正常的线程组元件。不同的是,这些类型的线程执行测试结束后执行定期的线程组。tearDown Thread Group类似于lr的end.可用于执行测试后动作。

  3. thread group(线程组).
    这个就是我们通常添加运行的线程。通俗的讲一个线程组,,可以看做一个虚拟用户组,线程组中的每个线程都可以理解为一个虚拟用户。线程组中包含的线程数量在测试执行过程中是不会发生改变的。

线程组:

名称:就如字面意思,起个有意义的名字就行

注释:

线程数:这里选择5
Ramp-Up Period:单位是秒,默认时间是1秒。它指定了启动所有线程所花费的时间,比如,当前的设定表示“在5秒内启动5个线程,每个线程的间隔时间为1秒”。如果你需要Jmeter立即启动所有线程,将此设定为0即可
循环次数:表示每个线程执行多少次请求。

在这里插入图片描述

3、测试片段(Test Fragment)
测试片段元素是控制器上的一个种特殊的线程组,它在测试树上与线程组处于一个层级。它与线程组有所不同,因为它不被执行,除非它是一个模块控制器或者是被控制器所引用时才会被执行。

控制器

JMeter有两种类型的控制器:取样器(sample)和逻辑控制器(Logic Controller),用这些原件来驱动处理一个测试。
4、取样器(Sampler)
取样器(Sampler)是性能测试中向服务器发送请求,记录响应信息,记录响应时间的最小单元,JMeter 原生支持多种不同的sampler , 如 HTTP Request Sampler 、 FTP Request Sampler 、TCP Request Sampler 、 JDBC Request Sampler 等,每一种不同类型的 sampler 可以根据设置的参数向服务器发出不同类型的请求。在Jmeter的所有Sampler中,Java Request Sampler与BeanShell Requst Sampler是两种特殊的可定制的Sampler.
在这里插入图片描述
5、逻辑控制器(Logic Controller)
逻辑控制器,包括两类无件,一类是用于控制test plan 中 sampler 节点发送请求的逻辑顺序的控制器,常用的有 如果(If)控制器 、 switch Controller 、Runtime Controller、循环控制器等。另一类是用来组织可控制 sampler 来节点的, 如 事务控制器、吞吐量控制器。
在这里插入图片描述
6、配置元件(Config Element)
配置元件(config element)用于提供对静态数据配置的支持。CSV Data Set config 可以将本地数据文件形成数据池 (Data Pool),而对应于HTTP Request Sampler和 TCP Request Sampler等类型的配制无件则可以修改 Sampler的默认数据。
例如,HTTP Cookie Manager 可以用于对 HTTP Request Sampler 的 cookie 进行管理。
HTTP 请求默认值不会触发Jmeter发送http请求,而只是定义HTTP请求的默认属性。
在这里插入图片描述
7、定时器(Timer)
定时器(Timer)用于操作之间设置等待时间,等待时间是性能测试中常用的控制客户端QPS的手段。类似于LoadRunner里面的“思考时间”。 JMeter 定义了Bean Shell Timer、Constant Throughput Timer、固定定时器等不同类型的Timer。
在这里插入图片描述
8、前置处理器(Per Processors)
前置处理器用于在实际的请求发出之前对即将发出的请求进行特殊处理。例如,HTTP URL重写修复符则可以实现URL重写,当RUL中有sessionID 一类的session信息时,可以通过该处理器填充发出请求的实际的sessionID 。
在这里插入图片描述
9、后置处理器(Post Processors)
后置处理器是用于对Sampler 发出请求后得到的服务器响应进行处理。一般用来提取响应中的特定数据(类似LoadRunner测试工具中的关联概念)。例如,XPath Extractor 则可以用于提取响应数据中通过给定XPath 值获得的数据;正则表达式提取器,则可以提取响应数据中通过正则表达式获得的数据。
在这里插入图片描述
10、断言(Assertions)
断言用于检查测试中得到的相应数据等是否符合预期,断言一般用来设置检查点,用以保证测试过程中的数据交互是否与预期一致。
在这里插入图片描述
11、监听器(Listener)
这个监听器可不是用来监听系统资源的元件。它是用来对测试结果数据进行处理和可视化展示的一系列元件。 图形结果、查看结果树、聚合报告、用表格察看结果都是我们经常用到的元件。
在这里插入图片描述
四、简单的接口测试实例
1、新建一个测试计划“接口测试”
在这里插入图片描述
2、添加一个线程组“豆瓣电影的API接口”,这里我们以豆瓣的开源api作为测试例子
在这里插入图片描述
3、添加一个http请求,一个http请求即为一个测试用例,测试一个接口
在这里插入图片描述
在这里插入图片描述
4、添加断言,在断言控制面板中,填写如下参数,验证响应结果是否包括以下参数
在这里插入图片描述
5、添加一个断言结果
在这里插入图片描述
在这里插入图片描述
6、添加一个监听器,查看请求结果
在这里插入图片描述
在这里插入图片描述
好了,一个简单的接口测试用例已经完成了,这只是一个简单的接口测试用例,后续会完善如何设计接口测试用例,待总结完整再分享给大家哈,感谢阅读!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值