Jmeter性能测试流程指引

2021-06-21 19:39:37 浏览数 (1)

一、性能测试概述

1、常规需求

2、用户反馈性能问题

3、对项目性能不放心

二、性能测试指标分析

1、多:可以支持更多的用户访问---用户数

2、快:用户体验舒畅---响应时间

3、好:访问都能成功,没有错误率---越低越好

4、省:达到预期效果,尽可能节省资源---服务器资源

5、系统吞吐量:TPS

三、熟悉业务

1、高频

2、核心

3、扎堆场景

四、熟悉项目的软件架构与部署

五、性能场景提取

◆场景性能指标要求

订单场景操作流程:

◆1、用户访问首页--登录---每一个用户一次

◆2、查看订单-点击订单管理

性能场景指标

◆验证最大在线用户数--(负载测试逻辑)

◆错误率<0.5%◆请求响应时间<5s

◆场景运行10分钟--不加同步定时器

◆服务器资源使用合理:

  • cpu使用率<80%
  • 内存使用率<80%

六、工具与脚本

1、工具:jmeter

优点:

  • 多线程框架-支持请求并发操作
  • 用于对服务器模拟巨大的负载
  • 支持Web、数据库、FTP服务器等各类系统性能测试
  • 开源、纯JAVA语言编写,可以进行二次开发

2、jmeter脚本

通俗:用户操作被测软件系统某场景的动作流程

JMeter:用户操作被测软件系统某场景的请求

3、脚本开发方式

  • 接口文档开发脚本
  • Fiddler抓包编写脚本
  • 录制脚本(JMeter代理服务器录制、Fiddler抓包导出Jmx文件)

七、脚本开发

1、确认需要参数化的数据

2、准备好参数化的数据源

3、脚本中的常量改成变量 ${变量名}

八、搭建监控环境

监控方案介绍

1、收集器方式:

A.实时收集并且传输

B.离线传输

2、Nmon监控方案

A.离线方案,通过Nmon收集器收集数据,等场景运行完后,通过分析离线分析

B.实时方案:grafana nmon_exporter 实时

3、Grafana监控平台

A.工作原理

B.效果展示

4、优秀监控方案的特性

A.准确性要高

B.时效性要长

C.可视化要高

D.历史数据

E.警告通知

九、运行场景

1、查看聚合报表现象:响应时间、错误率、吞吐量

2、查看服务器资源--grafana看具体数据

3、使用Top指令查看哪一个进程使用CPU高

十、监控与分析

监控:

jmeter聚合报表 Grafana

分析流程

◆现象:Jmeter请求响应时间长

◆1、服务器资源使用情况

◆2、哪些进程占的资源---top

◆3、数据库性能分析

A.数据库慢查询,:show variables like "%query%";

B.从进程查看线程:top -H -p PID号

◆4、查看关键指标

◆5、打开相应日志

十一、性能调优

性能分析流程梳理(可看着患者看病就医流程)

十二、测试优化后的效果及导出测试报告

1、通过指令导出报告

jmeter -n -t test.jmx(脚本的绝对路径)-l result.jtl(自定义的名称)-e -o tmpresult_report(测试报告的绝对路径)

2、直接在Jmeter工具中鼠标右键导出报告

十三、性能测试报告的撰写

测试报告是整个性能测试环节的总结性工作:性能测试方案、场景、性能分析,结论

性能测试报告组成部分:

1、测试基本信息

测试目的、报告目标读者、.术语定义、参考资料

2、测试环境描述

服务器软/硬件环境、网络环境、测试工具、测试人员

3、测试案例执行分析

详细描述每个测试案例的执行情况.以及对应的测试结果分析

4、测试结果综合分析及建议

对本次性能测试做综合分析,并给出测试结论和改进建议。

0 人点赞