性能测试(二)性能测试过程中的七大阶段
根据多次实践操作,再对比网上资料,总结了一下性能测试的过程。这个过程包括以下几个阶段:
1.测试确认
理解被测系统、寻找测试点、确认测试范围、测试环境等。一些重要信息需要同需求人员、开发人员讨论确认,比如说用户最常用哪些功能,需要最关注哪的性能,程序上哪可能是压力点,哪些数据需要模拟到真实的量级等。
2.确定通过标准
性能是好是坏、测试是否通过,必须有明确的标准。这个标准主要从客户的期望和业务上的需求两方面来考虑,客户的期望一般指页面上的响应时间,业务需求则是系统的处理能力,一般主要看TPS。标准制定的不合理,测试结果可能无法反映系统真实的性能表现。
3.测试设计
主要从上面提到的几个方面进行分析,针对系统的特点设计出合理的测试场景,为了让测试结果更加准确,这里需要很细致的工作。如建立用户模型,只有知道真实的用户是如何对系统产生压力,才可以设计出有代表性的压力测试场景。
此外,测试执行过程中,需要监控收集的各种指标数据,也需要明确下来。
4.测试环境准备
部署测试环境,生成测试数据,环境预调优等等。预调优指根据系统的特点和自己的经验,提前对系统的各个方面做一些优化调整,避免测试执行过程中的无畏返工。比如一个高并发的系统,10000人在线,连接池和线程池的配置还用默认的,那肯定是会测出问题的。
5.测试执行、监控
准备测试脚本,执行之前设计好的各个用例,监控并收集需要的数据。出现问题时,一定要全面的保留事故现场、或者是能进行分析的数据。
6.发现问题和分析定位
发现问题或者性能指标达不到预期,及时的分析定位,处理后重复测试过程。性能问题通常是相互关联相互影响的,表面上看到的现象很可能不是根本问题,而是另一处出现问题后引起的反应。这就要求监控收集数据时要全面,从多方面多个角度去判断定位。
7.性能报告
将性能测试过程中记录的各种数据汇总成报告,将各方面需要的结果清楚的展现出来