相信很多小伙伴想要自学性能测试,但网上的资料查阅出来的都比较干燥,对实际的性能测试经验并没有什么提升,本文从测试前的准备带你了解如何成为一名性能测试工程师。
在开始性能测试前,我们需要跟项目组确认的几点内容:
性能测试环境与生产环境服务器资源差异,并做差异分析,如测试环境的服务器资源与生产环境的服务器资源差距较大,需反馈给项目组,不然测出来的结果没有太大的参考意义;
开始测试前,确认日志级别,日志级别需要与生产保持一致。如生产的日志是Info级别,则在测试环境的日志也应该是Info级别;
确认数据库铺底数据(采用的方式为:让运维取生产上的每日成交量的数据库数据量),如数据库都是空表在测试查询交易的时候会造成与生产上差别较大;
相关交易的挡板是否部署完成(PS:当你的交易要发往其它系统的时候,由于该系统未部署性能环境,无法进行全链路测试,则需要部署挡板,直接返回成功的方式来进行测试);
系统性能指标(PS:采用二八原则,即80%的交易在20%的时间内完成,计算公式:(日均交易笔数*80%)/ (24*3600*20%))),看项目组是否需要预估三年后的系统性能指标,通常按每年1.3倍的增长来进行计算,若该测试的项目为新项目或新增的接口,则需项目组对该TPS进行评估;
确认服务器参数配置需与生产环境一致;
确认数据库表空间与生产表空间的大小,通常在压测的过程中会出现大量的数据,表空间不足会引起TPS 下降,报错等问题;
确认负载策略,有的项目有多台服务器,项目组会部署F5服务器,需要确认F5的策略是轮巡或其它机制;
确认需要测试的接口;对于TPS指标低于20笔/秒的接口是不建议进行测试的,意义不大。
点个关注,后续更新如何进行HTTP脚本及TCP脚本的调试工作。