【性能测试过程】之 场景设计

一、前言

       场景设计是整个性能测试过程中最关键的环节,也是难度最大的环节,设计的是否合理直接决定了测试结果是否准确,场景设计根据我们测试目的不同设计对应的场景执行策略也不同,所以在前期要对业务的实际运行场景及功能的流程有一定的了解,这样才能设计出更加贴合实际业务的测试场景,测试的结果才更有参考价值。

二、压测类型

       性能测试分很多种类型,每种类型的测试侧重点不同,测试目的也不同,比较常见、使用最频繁的类型主要有以下几种:

1、基准测试(Benchmark Testing):单个用户的 响应时间 吞吐量 事物数 ,基准测试通过之后再进行大量虚拟用户去压服务器,测试完成后可以做个参考,准备数据等可以作为参考;

2、压力测试(Stress Testing):如果目的是要测试出来系统的最大处理能力,就是极限测试出来,关注的就是压力上升的一个过程,此时在设置场景时就可以关注以下两点:

1)把时间间隔 设置的长点 每个时间间隔 增加的用户数 可以少点;

2)持续、结束就可以随便设置,我们关注的是压力上升的过程;

3、负载测试(Load Testing):如果我们做长时间的负载测试,想要看一系统在长时间的运行情况下,看看服务器 能不能支撑的住,关注的就持续过程,此时在设置场景时就可以关注以下两点:

1)压力上升 跟减少 我们可以快速上升,或者看有所有的用户一起运行;

2)持续时间可以长点,结束就可以随便设置我们关注的是压力持续的过程;

4、并发测试(Concurrency Testing):模拟多个用户某个时间同时访问系统的情况,评估系统在并发访问下的性能和响应时间;

5、稳定性测试(Stability Testing):在系统正常负载的基础上,突然增加负载,然后恢复到正常负载,以测试系统在负载波动时的性能和可靠性。

三、场景设计

        我们搞清楚了我们的测试目的、了解了不同测试类型的区别,前期对业务量、业务流程做了了解,在设计场景时还需要关注以下几个知识点:

1、添加压力机:根据压力的大小以及执行机的配置去设定需要几台压力机来执行脚本,单台执行机可执行的用户数不能过大,这样执行机本身就很容易成为瓶颈,导致用户很多在执行机并没有把所有压力传向服务器;

2、设置压力(画压力曲线图):根据我们的测试目的不同设置对应的压力曲线,压力测试我们关注的是上升过程,负载测试我们关注的是压力持续运行的过程;

3、设置场景参数(思考时间、事务、日志):调试脚本时思考时间、事务这些可以不加入,等运行场景需要的时候再根据情况进行添加,日志在大批量运行时尽量减少日志的输出,以节省资源;

4、并发测试设置一下集合点的集合策略:并发测试时需要设置集合点来模拟多用户同时操作的动作,集合点的策略根据不同的工具策略可能有所不同,大体就是分为按时间【等待设定的时间,到时间后用户一起执行下一操作】、或者按用户数【按设定的用户数到了对应数量就一起执行下一个操作】;

5、添加监控的参数:这个分两部分一个是场景脚本数据的监控比如平均响应时间、TPS、发送接收的数据量等,还有一个部分是服务器的资源监控,这个要结合我们选定的监控工具在运行场景前将监控启动开始监控服务器资源消耗情况。

四、总结

        根据测试目的、业务实际运行场景、业务量等多方面综合设计出来合理的场景,才能得到准确的结果数据,才能为系统作出准确的评估与分析,场景设计虽然在工具上操作很简单但是前期的准备工作及分析思考需要投入一定的资源和时间。多分析、多讨论、多学习、多总结才能使得自己的技术之路越走越远。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值