什么是压测,为什么要进行压力测试?JMETER工具的使用

本文详细介绍了JMeter的压力测试基础知识,包括吞吐率、并发连接数等概念,并通过实例讲解了如何录制和修改JMeter脚本,重点讨论了线程组、HTTP请求、参数化、关联和断言验证等关键步骤。最后,文章提到了压测的常见问题、编码实战以及结果分析的思考方向。
摘要由CSDN通过智能技术生成

1.背景介绍

JMeter是Apache组织的开放源代码项目,它是功能和性能测试的工具,100%的用java实现,我们今天要用到的就是JMeter的性能测试部分。

  首先我们先了解下压力测试的基本概念:

  1吞吐率(Requestspersecond)概念:服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请求数。某个并发用户数下单位时间内能处理的最大请求数,称之为最大吞吐率。计算公式:总请求数/处理完成这些请求数所花费的时间,即

  Requestpersecond=Completerequests/Timetakenfortests

  2并发连接数(Thenumberofconcurrentconnections)概念:某个时刻服务器所接受的请求数目,简单的讲,就是一个会话。

  3并发用户数(Thenumberofconcurrentusers,ConcurrencyLevel)概念:要注意区分这个概念和并发连接数之间的区别,一个用户可能同时会产生多个会话,也即连接数。

  4用户平均请求等待时间(Timeperrequest)计算公式:处理完成所有请求数所花费的时间/(总请求数/并发用户数),即Timeperrequest=Timetakenfortests/(Completerequests/ConcurrencyLevel)

  5服务器平均请求等待时间(Timeperrequest:acrossallconcurrentrequests)

  计算公式:处理完成所有请求数所花费的时间/总请求数,即Timetakenfor/testsCompleterequests可以看到,它是吞吐率的倒数。同时,它也=用户平均请求等待时间/并发用户数,即

  Timeperrequest/ConcurrencyLevel

举个跑步的例子进行解释

1.性能测试,表示在一个给定的基准下,能执行的最好情况。例如,在没有负重的情况下,你跑100米需要花多少时间(这边,没有负重是基准

2.负载测试,也是性能测试,但是他是在不同的负载下的。对于刚才那个例子,如果扩展为:在50公斤、100公斤……等情况下,你跑100米需要花多少时间

3.压力测试,是在压力情况下的性能测试。对于刚才那个例子,如果改为:在一阵强风的情况下,你在负重或没有负重的情况下,跑100米需要花多少时间


2.知识剖析

1、录制Jmeter脚本

录制Jmeter脚本有两种方法,一种是设置代理;一种则是利用badboy软件,badboy软件支持导出jmx脚本。

这里我们介绍第二种方法,利用badboy录制脚本,然后导出Jmeter需要的jmx文件。

打开badboy时默认是在录制模式下,可以在窗口标题栏中看到(recording),如果点击工具栏中个红色圆形按钮则进入非录制模式。首先,在地址栏中输入要录制脚本的地址,然后点击绿色按钮即可开始录制;录制完成后点击红色圆形按钮旁边的正方形黑色按钮结束脚本录制(录制的过程和loadrunn

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值