• 性能测试准备


    性能需求评估

    系统特殊要求:从实时性角度来分析,某些系统对响应时间要求比较,比如餐饮系统,系统的快慢直接影响客户的感受,这种情况就有作并发测试的必要,在大并发量的场景下,查看这个功能的响应时间

    性能需求分析方法
    1.确定性能测试点
    关键业务:确定被测项目是否属于关键业务,有哪些主要的业务逻辑点,特别是跟交易相关的功能点。例如结算,扣款等接口

    确定性能测试点
    日请求量:确定被测项目各功能点的日请求量(可以统计不同时间粒度下的请求量如:小时,日,周,月)。如果日请求量很高,系统压力很大,而且又是关键业务,该项目需要做性能测试,而且关键业务点,可以被确定为性能点

    逻辑复杂度:判定被测项目各功能点的逻辑复杂度。如果一个主要业务的日请求量不高,但是逻辑很复杂,则也需要通过性能测试。原因是,在分布式方式的调用中,当某一个环节响应较慢,就会影响到其他环节,造成雪崩效应

    运营推广活动:根据运营的推广计划来判定待测系统未来的压力。未雨绸缪,防患于未然,降低运营风险是性能测试的主要目标

    被测系统的性能不仅能满足当前压力,更需要满足未来一定时间段内的压力。因此,事先了解运营推广计划,对性能点的制定有很大的作用


    性能测试准备

    1,测试环境准备

    系统运行环境:测试环境,有些时候需求比较多,做性能测试担心把环境搞垮了影响其他的功能测试,可能需要重新搭建一套专门用来做性能测试的环境

    执行机环境:这个就是用来生成负载的执行机,有时候甚至需要一套执行机集群


    2,测试场景设计

    根据性能需求来分析来设计符合用户使用习惯的场景,场景设计的好不好直接影响到性能测试的结果

    3,性能工具准备
    负载工具:根据需求分析和系统特点选择合适的负载工具,比如LR,Jmeter等

    监控工具:准备性能测试时的服务器资源,JVM,数据库监控工具,以便进行后续的性能测试分析与调优

    4,测试脚本准备
    如果性能测试工具不能满足被测系统的要求或只能满足部分需求时,需要我们自己开发脚本配合工具进行性能测试

    5,测试数据准备
    负载测试数据:并发测试时需要多少数据?

    DB数据量大小:为了尽量符合生产场景,需要模拟线上大量数据情况,那么要往数据库里提前插入一定的数据量。这可能需要花费一些时间,特点是关联系统较多,逻辑复杂的业务可能同时涉及多张表


    性能测试执行
    1,人工边执行边分析
    通常我们做性能测试都是人工执行并随时观察系统运行的情况,资源的使用率等指标。这个过程可能会很漫长,需要不断的调整系统配置或程序代码来定位问题


    2,无人值守执行性能测试
    无人值守是最理想化的目标
    无人值守不是说没有人力介入,而是把人为的分析和执行过程分离,执行过程只是机器服从指令的运行而已

    通常测试环境在白天比较繁忙,出现性能问题及定位难度较大且会影响功能测试

    所以一般性能测试最好在晚上或周末进行,在相对较安静的条件有利于测试结果的稳定性

    性能测试报告与总结
    性能测试报告是性能测试的里程碑,通过报告能展示出性能测试的最终成果,展示系统性能是否符合需求,是否有性能隐患

    性能测试报告中需要阐明性能测试目标,性能测试环境,性能测试数据构造规则,性能测试策略,性能测试结果,性能测试调优说明,性能测试过程中遇到的问题和解决办法等

    性能测试工程师完成该次性能测试后,需要将测试结果进行备案,并作为下次性能测试的基线标准,具体包括性能测试结果数据,性能测试瓶颈和调优方案等。

    同时需要将测试过程中遇到的问题,包括代码瓶颈,配置项问题,数据问题和沟通问题,以及解决办法或解决方案,进行知识沉淀

  • 相关阅读:
    关于java中final变量的小问题
    你在努力工作吗?
    Google Android系统中侵犯Oracle的专利说明
    应用系统之间数据传输的几种方式
    Java内存模型jsr133规范介绍
    程序员40岁之后怎么办?
    eaby技术架构变迁
    缓存使用的一些注意事项
    java对象初始化顺序
    Ubuntu安装Fcitx(小企鹅五笔输入法)
  • 原文地址:https://www.cnblogs.com/lvchengda/p/12593154.html
Copyright © 2020-2023  润新知