性能测试流程
很多人刚刚接触性能测试的时候,拿到客户提出的大致需求,如并发用户数是500,响应时间3秒。然后就开始做脚本,加压运行,收集测试结果;等客户问到:某某流程支持多少并发?各个测试流程比例是否和实际用户使用情况一致?可扩展需求情况如何?然后我们就傻眼了...
拿到一个性能测试任务的时候,我们首先需要明确我们的测试目标和输出结果是什么;没有计划的开始注定是失败的。做性能测试需要一个规范的流程,划分清各个阶段需要做哪些工作,这样我们在接到一个任务时就不会手忙脚乱。性能测试流程大致分为一下几个阶段:
1、测试准备
2、脚本开发与调试
3、测试执行
4、测试结果评估
5、测试后跟踪
测试准备包括:
1、测试目标:
从需求文档或者用户获取:并发用户数,事务吞吐需求,响应时间需求,系统占用资源需求,可扩展性需求等;
2、应用软件:
从开发人员获取:系统整体架构(BS/CS),采用开发语言,通信协议,动态session,验证码等;
3、系统部署平台:
从运维人员获取:物理部署(局域网/虚拟机),硬件架构(CPU/MEM/IO),操作系统,数据库(版本/启动参数/存储布局),中间件(参数配置),部署模式等;
4、系统负载模型:
通过调研获取:从业务层面选取关键用例吞吐率以及用户行为习惯,确定测试流程及流程业务比例;从系统负载方面了解高峰/平常场景吞吐率;
5、制定测试计划和测试方案。
测试脚本是做好性能测试的基础,监控结果是性能测试的关键;扎实的代码基础和熟练掌握监控结果的收集和分析是性能测试的保障;系统上线后,对实际负载与性能情况和测试过程中做比较总结经验也是学习提高的好方法。