性能测试相关知识(二) Jmeter的应用

 1、性能测试的方法

1.1验收负载测试:

在QA的环境模拟生产运行的业务压力和使用场景组合,测试系统的性能是否满足生产环境的性能诉求。

1.2负载测试

在被测系统上持续不断的增加压力,直到性能指标(响应时间等)超过预定指标或者某种资源(CPU&内存)使用已达到饱和状态。核心是找到系统的处理极限,为系统调优提供数据,从而达到了解系统性能的容量。

1.3压力测试

该发放是指系统在一定饱和状态下,具体如CPU,内存等饱和使用的情况下,系统能够处理的会话能力,以及系统是否会出现错误,比如TimeOut

OOM OverstackExpection(堆栈异常).压力测试的特点:

1、检查系统在处于压力情况下时应用的性能表现

2、等价于负载测试,使系统的资源处于一个瓶颈的状态(建议CPU和内存在75%以上)

3、这种方法一般用于测试系统的稳定性

1.4配置测试

被测环境软硬件环境参数的调整,达到最优的分配原则。

1.5并发测试

并发测试指的是模拟用户的并发访问,测试多用户并发访问同一个应用时是否存在死锁或者其他的问题,并发测试的特点是:

1、发现系统中可能隐藏的并发访问的问题

2、关注系统可能存在的并发问题,如内存泄漏,线程锁,资源争用情况

3、使用的测试工具如profiler等

 

 

1.6可靠性测试

给系统一定的业务压力,让应用持续运行一段时间,测试系统在这种条件下是否能稳定运行。

1.7故障演练

故意的在过程中 让程序出现问题,看程序自己能不能平稳的过渡 考验的是团队的合作能力

1.8灾难恢复测试

灾难恢复测试指的是,故意把数据删除了 看程序怎么进行自我数据恢复

2、JMeter性能测试

2.1JMeter执行原理

JMeter通过线程组来驱动(也可以理解称为LR工具里面的虚拟用户)运行测试脚本对目标服务器发起大量的网络请求

在每个客户端上可以运行多个线程组,也就是说一个测试计划里面可以包含N个线程组。

 

 2.2线程属性

2.2.1线程数

线程数指的是模拟的用户数 可以用于并发场景来运用,线程数越多,则模拟用户数就越多

 

 2.2.2Ramp-Up

每秒执行多少个用户  计算方式为 线程数/Ramp-Up=每秒执行的线程数

如下图所示 即为每秒执行5个线程组

 

 2.3持续时间

持续时间指的是测试计划持续多长时间

2.4启动延迟

从当前时间延迟多久时间开始运行测试,也就是说点击执行后,仅仅是做初始化的场景,不会执行测试,等待延迟到达后开始运行测试,执行的时间为持续时间设置的时间。

 

 举例说明 每秒能处理5个线程 启动延迟设置为5秒 则 启动延迟结束后 瞬间发送延迟5*5=25个线程 后续每1秒执行5线程

2.5聚合报告

右键测试计划选择添加监听器当中的 聚合报告

需要注意的是聚合报告和线程组是平级 且需要放在线程组的上面

 

 

 

 其中所有参数的含义如下表所示

Label:取样器名称
Samples:取样器运⾏次数
Average:单个请求的平均响应时间
Median:50%请求的响应时间
90%Line:90%请求响应时间
95%Line:95%请求响应时间
99%Line:99%请求的响应时间
Min:请求的最⼩响应时间
Max:请求的最⼤响应时间
Std.Dev:响应时间的标准⽅差
Error%:事务错误率
Throughput:吞吐率,也就是TPS
KB/sec:每秒数据包流量
Avg.Bytes:平均数据流量
Received KB/sec:每秒从服务器端接收到的数据量

SentKB/sec:每秒从客户端发送的请求的数量


 

2.6响应时间图

右键线程组 选择添加监听器里的响应时间图

 

 在运行测试后 在查看响应时间图

 

posted on 2022-02-15 16:47  钢镚芽儿哟  阅读(111)  评论(0编辑  收藏  举报

导航