初识JMeter

        JMeter作为Apache的一款的开源项目,是一个纯Java桌面应用,用于压力测试和性能测试。它最初设计用于Web应用测试后来扩展到其他测试领域。

       下载:http://jmeter.apache.org/download_jmeter.cgi

初识JMeter

       

       文件位置---直接双击启动

      初识JMeter

   界面

   初识JMeter

开始测试第一步--切换语言

初识JMeter

1.新建测试计划初识JMeter

  2.添加线程组

  初识JMeter

3.新建HTTP请求并设置相关参数

初识JMeter

初识JMeter

   4.新建查看结果树,设置查看方式

初识JMeter

初识JMeter

5.设置该节点可以查看http请求的相关请求(后面测试即可发现)

其实正常情况下直接点击执行即可,如图

初识JMeter

  这是正常的get请求,如果是post请求,带body体参数,带请求头呢?动态参数呢?下面一一实现

  5.1设置http请求头

  初识JMeter

初识JMeter

  这样就可以在同一个线程组中使用请求头,类似于content-type的数据设置也可以在这里进行调整

5.2设置body体参数和query参数--在相关请求的参数管理上进行设置

  初识JMeter

 5.3设置动态参数

  初识JMeter

 依次解析:设置--设置随机数--设置随机数的大小范围--生成变量--最后拿到变量粘贴至需要动态生成的参数位置即可

6.设置线程数和执行时间

初识JMeter

设置多少线程和持续时间可以测试相关接口的并发和稳定性

7.生成测试报告

初识JMeter

初识JMeter

8.解析测试报告

压测结果指标

  • Samples:表示一共发出的请求数

  • Average:平均响应时间,默认情况下是单个Request的平均响应时间(ms)

  • Error%:测试出现的错误请求数量百分比。若出现错误就要看服务端的日志,配合开发查找定位原因

  • Throughput:简称tps,吞吐量,默认情况下表示每秒处理的请求数,也就是指服务器处理能力,tps越高说明服务器处理能力越好

压测结果分析

  1. Error%:确认是否允许错误的发生或者错误率允许在多大的范围内;

  2. Throughput:吞吐量每秒请求的数大于并发数,则可以慢慢的往上面增加;若在压测的机器性能很好的情况下,出现吞吐量小于并发数,说明并发数不能再增加了,可以慢慢的往下减,找到最佳的并发数;

  3. 压测结束,登陆相应的web服务器查看CPU等性能指标,进行数据的分析;

  4. 最大的tps:不断的增加并发数,加到tps达到一定值开始出现下降,那么那个值就是最大的tps。

  5. 最大的并发数:最大的并发数和最大的tps是不同的概率,一般不断增加并发数,达到一个值后,服务器出现请求超时,则可认为该值为最大的并发数。

  6. 压测过程出现性能瓶颈,若压力机任务管理器查看到的cpu、网络和cpu都正常,未达到90%以上,则可以说明服务器有问题,压力机没有问题。

  7. 影响性能考虑点包括:数据库、应用程序、中间件(tomact、Nginx)、网络和操作系统等方面。