Apache JMeter 入门指南:从零开始学习压力测试

Apache JMeter是一款开源的性能测试工具,可以对不同的应用程序、服务器和协议进行测试。

用 Apifox,节省研发团队的每一分钟

Apache JMeter 入门指南:从零开始学习压力测试

免费使用 Apifox

相关推荐

最新文章

API

一体化协作平台

API 设计

API 文档

API 调试

自动化测试

API Mock

API Hub

立即体验 Apifox
目录

简介

JMeter 是开源软件 Apache 基金会下的一个性能测试工具,用于测试部署在服务器端的应用程序的性能。本文旨在帮助想了解性能测试和 JMeter 的初学者。我们将介绍 JMeter 的使用场景、安装和运行方法,以及如何开始最简单的测试。

下载

您可以在 JMeter 下载和安装教程 下载最新版本的 JMeter。

Jmetr 下载

安装

JMeter 是一款免安装的软件,下载安装包后直接解压即可使用。在 bin 目录下,Windows 用户运行 jmeter.bat 文件即可启动 JMeter,Unix / MacOS 用户则需要运行 jmeter.sh。

Jmeter 安装

添加虚拟用户组

如下图所示,右击“Test Plan” > “Add” > “Threads(Users)” > “Thread Group”。JMeter 是由 Java 实现的,并且使用一个 Java 线程来模拟一个用户,因此线程组(Thread Group)就是指一组用户的意思。

添加虚拟用户组

设置线程组参数

  1. Number of Threads (users):指虚拟用户数。默认为 1,则表明模拟一个虚拟用户访问被测系统。如果想模拟 100 个用户,则此处输入 100。
  2. Ramp-Up period (seconds): 虚拟用户增长时长。举个例子:比如你测试的是一个考勤系统,实际用户登录使用考勤系统的时候并不是大家一起登录。实际的使用场景可能是 9:00 上班,那么从 8:30 开始,考勤系统会陆陆续续有人开始登录,直到 9:10 左右。如果完全按照用户的使用场景来设计测试,此处应输入 40(分钟)* 60(秒)= 2400。但实际测试一般不会设置如此长的 Ramp-Up 时间,原因是你难道想要等上 40 分钟吗?一般情况下,可以估算出登录频率最高的时间长度,比如此处从 8:55 到 9:00 登录的人最多,那么这里设置为 60秒。如果“线程数”输入为 100,则意味着在 1 分钟内 100 个用户登录完毕
  3. Loop Count:循环次数。默认为 1,意味着一个虚拟用户做完一遍事情之后,该虚拟用户停止运行。如果选中“永远”,则意味着测试运行起来之后就根本停不下来了,除非手动停止。
设置线程组参数

添加被测页面

接下来的一步就是要加入实际被测页面,右击“Thread Group” > “Add” > “Sampler” > “HTTP Request”。

添加被测页面

设置请求参数

接下来需要设置一下“HTTP Request”的属性,如下所示:

  1. 名称:输入“example”,就是被测试网页的描述性文字。
  2. 服务器名称或IP:输入 “www.example.com”。剩下的属性可以按照被测系统的属性按需配置,现在都可以为空。
设置请求参数

保存与运行测试

现在的测试脚本已经可以运行了,先点击“保存”按钮;然后点击“运行”按钮。

保存与运行测试

然后点开“Options” > “Log Viewer”可以查看运行的日志。

运行日志

这 JMeter 运行看起来也太不直观了吧?那如果我的测试有问题了,怎么发现啊?别着急,JMeter 提供了“Listener”让用户来观察测试结果。

添加结果监听器

如下图所示,右击“Thread Group” > “Add” > “Listener” > “View Results Tree”来查看性能测试过程中请求和响应信息。添加完毕后,保存测试脚本,再次运行。

添加结果监听器

运行测试完毕之后,点击“View Results Tree” ,你可以看到一些测试期间一些有用的信息,比如发送的请求的信息和响应数据等。

查看响应

好啦,至此为止,你已经学会了如何编写一个最简单的 JMeter 性能测试用例。

更好的选择 Apifox

可以发现,JMeter 的测试流程配置相对繁琐。那么,是否有更加简单快捷的工具呢?我们强烈推荐 Apifox,使用非常方便。在 Apifox 中,首先新建一个接口,然后在自动化测试中导入该接口,点击运行,无需进行像 JMeter 中那样繁琐的配置,让复杂的流程变得简单易行。

新建接口

新建接口

导入用例

导入用例

运行测试

运行测试

想要全面提升 API 开发与测试效率,就用 Apifox。

Apifox

免费使用:https://apifox.com/