性能测试的背景:
1.验证被测服务是否存在高并发缺陷
在测试过程中,我们需要知道哪些接口是存在一个高并发的场景,需要跟产品与研发对齐,一个接口可能平均每个用户一分钟就会执行一次,所以要确保没有高并发缺陷的存在
2.产品有明确要满足多少的用户数
产品经理通过线上的数据了解到一个接口等峰值请求数量,所以我们在测试的过程中尽量要高于当前的一个并发数,留出风险可控的一个区间
3.了解应用服务器或数据服务器的瓶颈
如果是新的项目,新申请的线上服务器,我们在测试过程中是需要先了解当前服务的瓶颈,也能保证服务满足线上的一个请求量
性能测试的流程:
性能测试需求→测试计划→接口测试或功能测试完成后,开始编写性能测试方案→方案评审→搭建性能测试环境→根据方案编写性能测试脚本→冒烟测试→脚本用例执行→性能指标采集→性能瓶颈分析→瓶颈或性能问题的定位→问题的解决或性能调优→性能测试报告输出
性能测试的价值:
1.保证线上大量用户的访问情况,确保产品的高可用、稳定性、安全性。
2.可以为研发或运维提供可参考的瓶颈指标数据,便于定义策略的阈值。
4.能覆盖更齐全的业务场景,验证出可能存在的高并发高危漏洞,满足更高的代码覆盖率统计
5.业务高并发处理的正确性。
6.节省服务器资源成本
服务实例的指标:
1.cpu使用率
2.内存使用率
3.网络
4.磁盘IO
事务的指标
1.事务失败率
2.吞吐量
3.平均响应时间
4.并发数