概述

今天做一个性能测试的案例。需求中给出并发人数和业务时间段。根据2,5,8原则,统计响应超时率。

实际场景

1:登录--考勤打卡--退出

2:并发人数200人,业务持续时间5分钟

3:要求登录响应时间不能超过5s,考勤打卡时间不能超过2s,退出系统时间不能超过2s

3:要求计算出登录,考勤,退出系统三个业务场景的响应超时率

脚本设计

1:首先设计出三个场景的接口

添加线程组,线程数设置为200。先做一次基准测试,迭代次数设置为1

Jmeter_负载测试统计超时率_错误日志

2:添加三个场景的接口,分别添加用户集合点,定时器和断言持续时间。

login的集合点设置为200user,断言时间为5s

考勤和退出系统的定时器为5s,断言持续时间分别设置为2s和2s

只要接口响应时间超出我们的断言时间,就抛出断言失败,写入错误日志

Jmeter_负载测试统计超时率_错误日志_02

 Jmeter_负载测试统计超时率_性能测试_03

3:启动线程,观察聚合报告。发现三个场景的响应时间都没有超过阈值

 Jmeter_负载测试统计超时率_错误日志_04

4:在线程组中修改持续负载的时间为5分钟,循环次数为永远。启动线程组,观察聚合报告

Jmeter_负载测试统计超时率_性能测试_05

聚合报告中显示,我们的三个场景,错误率分别为

0%;0%;0.98%                    

断言结果中能看到超时记录。三个业务中,只有退出系统超时最多。说明不满足需求,需要调优

Jmeter_负载测试统计超时率_响应时间_06

注意

不同行业不同业务可接受的响应时间是不同的,一般情况下

•互联网企业:500毫秒以下,例如淘宝业务10毫秒左右。

•金融企业:1秒以下为佳,部分复杂业务3秒以下。

•保险企业:3秒以下为佳。

•制造业:5秒以下为佳。