性能测试影响因素之考虑实际场景

影响性能测试结果的因素有很多,硬件环境、软件环境都会影响性能测试结果。今天我要分享的是场景对性能测试的影响。

在做性能测试时一定要调研实际的用户场景。模拟实际用户场景进行性能测试,也是性能测试中不容忽视的一点,下面举个我自己实际碰到的例子来说明这个问题。

我负责的一个机考项目,在上线前进行了性能测试,主要场景包括:登录、获取试题、答题、提交试卷这几个步骤。压测时各场景都没问题,在足够大的并发时,响应时间也很短。但是在系统上线七八个月的时候,有两家机考(共一百多家)反应,考试答题点击下一题时很慢,要等两分多才能跳到下一题。出现这个问题,一开始也是摸不着头脑,一百多家怎么偏偏就两家反应这个问题,并且之前也都是好好的,完全不慢。再次进行压测发现单单看答题这个请求,响应并不慢。但是在对比之前的压测报告后发现,取题这个请求响应时间明显比之前长很多。跟开发一起讨论后得出结论:题库数量庞大,导致取题变慢。原来我做压测时并没有考虑到题库试题数量这一块,实际场景是每考一次试都要从国家局下载试题到机考系统,这样随着考试次数的增加,题库数量也会增加。

发现上面这一点也还是解释不了,为什么点击下一题会等那么久。难道是获取试题影响了答题?可是获取试题怎么会影响到答题呢,难道答题时有人还在获取试题?经询问,实际场景是:学员是陆陆续续进入考场考试的,入场完一个进一个,没个人入场操作差不多1-2分钟。按照用户的实际场景调整压测脚本后,果然出现了答题请求响应时间很长,差不多两分钟的现象。

由上面的例子,我是亲身体会到压测要考虑实际场景,不按实际场景测,谁也不知道会出现什么样的幺蛾子。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
设计一个有效的软件性能测试场景是确保性能测试的准确性和有效性的关键。下面是一些设计软件性能测试场景的步骤和方法: 1. 理解系统:首先,要对待测试的系统有足够的理解。了解系统的架构、功能和性能要求,以及用户行为模式和使用情况。 2. 确定测试目标:明确性能测试的目标和预期结果。例如,确定系统的响应时间阈值、吞吐量要求等。这有助于指导测试场景的设计和评估测试结果。 3. 分析用户行为:根据实际用户行为和使用情况,分析出系统的关键用户场景考虑用户的登录、搜索、浏览、购买等操作,并确定这些场景的重要性和频率。 4. 设计负载模型:根据用户行为场景,设计适当的负载模型。负载模型包括并发用户数、请求频率、负载曲线等。这可以通过观察现有用户行为数据、分析系统使用情况和业务需求来确定。 5. 设置测试数据:使用真实或合理的测试数据来模拟实际情况,并确保测试数据的大小和类型与实际使用相符。 6. 定义性能指标:根据测试目标和系统特点,选择适当的性能指标进行监测和评估。常见的性能指标包括响应时间、吞吐量、并发用户数、资源利用率等。 7. 控制变量:在设计测试场景时,要尽量控制变量,确保测试结果的可靠性。例如,测试时应保持硬件和网络环境的一致性,避免其他因素对测试结果的影响。 8. 并发和负载控制:根据系统的性能要求和承载能力,设计合适的并发用户数和负载大小。可以逐步增加负载,观察系统的性能变化和瓶颈点。 9. 随机性和多样性:在设计场景时,应考虑引入一定程度的随机性和多样性,以模拟真实的使用情况。例如,随机生成用户请求时间间隔,模拟不同用户行为等。 10. 结果分析和报告:分析测试结果,识别系统的性能瓶颈和潜在问题,并提供详细的测试报告和优化建议。 通过合理设计软件性能测试场景,可以更准确地评估系统的性能,并为优化提供有针对性的建议。设计过程中需要综合考虑系统特点、用户行为、负载模型等因素,并不断优化和调整测试场景,以满足测试的目标和要求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值