本文主要是一次接口性能测试的简单记录,对其中涉及的术语和计算方式等不会详述,主要是性能测试需要准备和考虑的内容的概述,有一个大概的方向。还有一些细节的工具使用和注意点,参考的测试文档,截图等等,后面整理了再补上。
-
测试计划文档
测试计划主要关注3点:
- 了解性能测试需求点,需要达到什么样的指标。比如双十一即将来临,需要测试下系统是否能够在压力条件下持续稳定运行;了解预测的双十一的单量是多少,性能指标需要达到多少TPS,平均响应时间多少等;一般业务单量由产品给出,性能指标由架构师分析给出。
- 性能测试场景设计,一般有单场景、混合场、稳定性场景等,需要根据业务具体设计;
- 性能测试环境,最好是与正式环境保持一致,如果不一致,需要将(1)中计算的指标再换算。
性能指标有很多,主要包括业务指标(TPS,并发数…)和服务器指标,下面列一下比较常用的指标。
- 性能测试
性能测试主要使用专业的性能测试工具来模拟大量的真实用户在生产环境(或模拟生产环境)上对典型性能业务进行并发操作,并获取典型业务的最大并发峰值、最大并发峰值响应时间、业务最大处理能力(TPS)及各服务器的资源变化情况等,最终以获取的性能指标在整体上衡量被测试系统的性能处理能力。
- 压力测试
主要模拟系统高峰时段的压力情景,并通过专业压力手段对系统施加大并发、大压力,来验证被测系统是否会产生宕机、应用异常终止、资源竞争异常、资源死锁、内存泄露等性能问题。
- 单场景负载测试
通过在被测系统上对某一个功能不断增加并发压力,来检验系统业务吞吐量(TPS)、业务响应时间、CPU利用率等性能指标是否满足用户的性能指标需求。
- 混合场景负载测试
通过在被测系统上对多个组合功能不断增加并发压力,来检验系统业务吞吐量(TPS)、业务响应时间、CPU利用率等性能指标是否满足用户的性能指标需求。
- 可靠性测试
在给系统加载一定业务压力的情况下,使系统运行一段时间,以此检测系统是否稳定
- 并发用户数
在同一时刻与服务器进行交互的在线用户数量。
- 测试场景
通过组织若干类型、若干数量的虚拟用户来模拟真实生产环境中的压力情况。
- 思考时间
虚拟用户思考时间,模拟真实用户在每一步操作提交之前的思考和数据输入时间。
- 递增数量</