性能测试测试策略
一、模拟生产线真实的硬件环境
配置与生产环境相似的测试环境,使用物理机作为服务器。例如,使用4核CPU、8G内存的机器模拟生产环境APP应用服务器;使用负载均衡模拟共享中心的应用。
二、避免网络问题
服务器置于同一机房,最大限度避免网络问题。所有性能测试的服务器都放置于一个机房,属于同一个网段,服务器与服务器之间的网络交互通过交换机进行。
三、pv
以pv为切入点,通过模型将其转换成性能测试可量化的TPS。互联网的特点,是在线用户不断变化,很难统计到具体某个应用的在线用户数;但是页面是固定的,可以统计的。
用户u访问了p页面的行为,还能捕获的,对于页面的p不管当前有100个用户还是1000个用户在使用,页面的page view都是可以统计到的。
因此,以pv未性能测试切入点,作为性能测试的突破口。通过这种方式,可以将页面流量直接转化成page view,作为性能测试预期目标,得到pv数值之后,再通过pv计算模型、pv-》TPS转换模型,将它转化为测试工具可衡量的指标TPS。
四、基础数据、业务数据
性能测试数据分为基础数据和业务数据两部分。
基础数据:指为了使表中的数据达到一定的数量级而填充的数据,目的是测试出数据库索引是否足够优化、表空间、索引空间是否足够。
业务数据:指为了使系统能够按业务逻辑运行起来的数据,通俗而言,就是功能测试使用的数据,目的是测试出sql语句是否足够优化、代码是否优化等。
五、日志
日志等级设置成warn/error,避免大量打印log对性能测试结果的影响。
六、屏蔽缓存
屏蔽缓存,模拟最坏的情况
七、单场景、混合场景
先单场景,后混合场景,确保每个性能瓶颈都得到调优。性能测试过程中,选择先执行单场景,后执行混合场景的策略。
单场景:可以详细的测试到某个页面、某个接口等,这种方式有利于定位性能瓶颈,优化代码。对于使用HSF方式通信的系统来说,这样的针对性测试效果非常显著。
混合场景:在单场景都优化完成后,按照一定的比例对各种场景进行组合,测试整个应用系统的总体性能表现。其实,单场景和混合场景,两种都不可缺少。
八、拆分问题,隔离分析,定位性能瓶颈
性能测试过程中出现的小概率事件,往往隐藏着大的性能瓶颈。为了精确定位道瓶颈,需要将各个应用,或者一个应用的各个环节进行拆分,逐渐隔离掉没有问题的部分,然后在可能有问题的部分进行再排查,直到瓶颈定位到为止。
九、通过标准
根据性能测试通过标准,来判断被测性能点通过与否。性能测试团队将公司对应用程序的要求、历史性能测试结果数据、生产线真实监控结果,执行性能测试通过标准。从服务端性能、前端性能、用户体验性能等多个维度界定,使通过标准更具科学性、指导性。
十、记录性能问题
对于不能再当前项目解决的性能bug,记录问题到缺陷平台,邀请专家组进行风险评估

浙公网安备 33010602011771号