【0基础也能学会】JMeter:如何开始简单的WEB压力测试?

1440 篇文章 68 订阅
1438 篇文章 113 订阅

背景

最近工作上被安排针对Web网站进行性能压测,以评估特定的硬件配置下Web网站可支持的并发用户数。考虑到JMeter是流行的Web性能压测工具,因此趁着这次机会上网查阅了很多关于JMeter的资料,也自己动手进行软件的配置和调测,从最基本的发送HTTP请求,到参数化输入,分布式测试和最后的实时结果展示都折腾了一把。现将折腾过程进行整理,既作为自己日后参考,也可分享给有需要的人,少踩一些坑。

在折腾的过程中,主要参考JMeter官网,上面有详细的手册和教程,同时也参考了其他一些博客和StackOverflow。重新整理的过程也是一个学习提高的过程,复习了相关的概念并找到了一些更易于理解的方法。

接下来按照我做为初学者对性能压测的疑问,对整个过程进行梳理:

  • 如何开始简单的WEB压力测试(一):发起第一个HTTP请求
  • 如何开始简单的WEB压力测试(二):并发测试与参数化
  • 如何录制测试计划
  • 如何进行分布式压力测试
  • 如何实时展现测试结果

每个问题都会辅以实际的例子进行解答,并将具体操作的步骤和结果截图记录下来。


如何开始简单的WEB压力测试

俗话说万事开头难,接下来我们以一个最简单的例子介绍如何从JMeter发起第一个HTTP请求。后续在这个例子上进行延伸,了解如何进行并发测试和参数化。

发起第一个HTTP请求

1. 安装JMeter

建议从官网上下载最新版本,以便获得更多新功能。目前最新的版本是3.3,支持Java8。同时,官网上也有丰富的文档资源,包括用户手册,最佳实践,组件参考和教程等,值得花时间仔细阅读。

2. 准备被测网站

被测网站建议使用 PutsReq 。这个网站可以接受HTTP请求并且可以自定义返回结果,过程非常清晰,适合做为HTTP测试使用。

在网站首页上点击 “Create a PutsReq" 蓝色按钮,网站会自动帮你创建一个URL,接下来就可以往这个路径发送HTTP请求。可以看到是如果普通的GET请求,则会返回"Hello World";如果是POST请求并带了name参数(假设name参数值为XYZ),则会返回 Hello XYZ

PutsReq网站截图

3. 在JMeter中配置测试计划

首先在Test Plan中增加一个Thread Group。在JMeter中每个Thread相当于一个模拟用户,在Thread Group中进行进一步的配置可以定义模拟用户的行为,如发起各种请求等。

创建Thread Group

在本例中Thread Group创建后可以先不改参数,接着创建一个Sampler/HTTP Request

创建Sampler

并按下图所示填写相关的参数,包括协议,服务器名,请求类型和路径,让模拟用户发送HTTP GET Reqeust到被测网站。

配置Sampler

最后增加一个Listener/View Results Tree,查看请求的结果。

创建Listener

如果一切正常,那这个请求应该返回一串字符”Hello World"

4. 通过JMeter执行测试计划并查看结果

配置完成后我们就可以通过JMeter执行刚刚配置好的测试计划,即发送一个HTTP GET Request到被测网站 PutsReq

执行测试计划

在JMeter上查看请求结果,返回是一串字符 "Hello World"

通过Listener查看请求返回结果


这一小节先整理到这里。下一小节我们在这个例子的基础上进行延伸,介绍如何同时发起多个请求,并对请求的输入进行参数化。敬请期待!

END绵薄之力

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

加入我的软件测试交流群:110685036免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

软件测试面试小程序

被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!

涵盖以下这些面试题板块:

1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux

6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础

获取方式 :


 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JMeter是一个开源的Java应用程序,主要用于进行压力测试和性能测量。它可以模拟多种类型的负载,包括Web应用程序、数据库、FTP服务器等。对于Web压力测试,你可以使用JMeter来模拟多个用户同时访问一个Web应用程序,并收集性能数据和指标。 要进行Web压力测试,首先你需要安装JMeter并启动它。然后,你可以按照以下步骤进行测试: 1. 创建测试计划:在JMeter中,你需要创建一个测试计划,该计划将包含所有的测试元素和配置。右键点击测试计划,选择"Add",然后可以添加线程组、HTTP请求等元素。 2. 配置线程组:线程组定义了并发用户的数量和其他相关设置。你可以设置线程数、启动时间、循环次数等。根据你的需求进行配置。 3. 添加HTTP请求:在线程组下,你可以添加HTTP请求元素来模拟用户的行为。你可以指定请求的URL、方法(GET、POST等)、参数等。 4. 添加监听器:监听器用于收集性能数据和指标。你可以选择合适的监听器来监视请求响应时间、错误率、并发用户数等。 5. 运行测试计划:准备好测试计划后,你可以点击运行按钮开始压力测试JMeter将模拟多个用户并发送请求到目标服务器。 6. 分析结果:测试运行完成后,你可以查看监听器中收集的数据和指标。通过这些数据,你可以评估Web应用程序的性能,找出性能瓶颈,并进行优化。 以上是使用JMeter进行Web压力测试的基本步骤。当然,JMeter还提供了更多高级功能和配置选项,可以根据具体需求进行调整和扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值