压力测试
通过性能压测工具,通过特定方式,对系统施加一定的压力:正常、异常负载以及峰值来对系统世家压力,得到各项性能指标。保证系统的性能需求。
价值和目的
- 评估系统的能力
- 识别系统的弱点、瓶颈
- 检查系统的隐藏问题
- 检验系统的稳定性和可靠性
性能测试指标
- 【虚拟用户数】:线程=用户
- 【并发数】:指在某一时间,一定数量的虚拟用户同时对系统的某一个功能进行交互,一般通过集合点实现
- 【事务】:事务代表一个完整的功能,由测试人员决定。
- 【场景】:性能测试的用例
- 【响应时间RT(Response Time)】:
- 平均响应时间
- 中位数:90%,95%,99%
- 基准测试:1个用户请求接口,200-500ms
- 压力测试:N个用户并发请求接口,2s
- 【TPS(Transaction Per Second)】:用于衡量系统在一定时间内能够处理的事务数(交易数)
- 计算公式:总事务数/总运行时间
- 指标:在没有更详细的数据,根据二八定律:80%的事务在20%的时间完成
- 【QPS】:每一秒的查询数(衡量数据库)(RPS-请求数,HPS-点击数(用于衡量客户端))
- 【吞吐量】:衡量网络成功传输的数量,单位(Bytes/s)
- 【资源利用率】:服务器:CPU,内存,磁盘,网络
性能测试流程
- 需求分析及需求确定(指标值,场景,环境,人员)
- 性能测试计划
- 基准测试
- 负载测试
- 压力测试
- 稳定性测试
- 其他:配置测试,极限测试,浪涌测试
- 准备:人力,硬件,环境折算
- 执行
性能压测脚本的生成以及完善和增强
通过jmeter代理服务器录制脚本 2.