写点什么

软件测试 | 性能分析的基本原则

  • 2023-07-07
    北京
  • 本文字数:1128 字

    阅读完需:约 4 分钟

更多软件测试学习资料戳!!!

1.性能分析的基本原则

确定测试结果有效之后,接下来就要开始对测试数据进行深入地挖掘了。面对经过测试工具产生的纷繁复杂的原始测试数据,如果来进行分析呢?一个普遍遵循的原则是“由外而内,由表及里,层层深入”,如图 4-1 所示。

对于一个应用系统,性能开始出现下降的最直接表象就是系统的响应时间变长,于是,系统响应时间成为分析性能的起点。性能分析的原则如图 4-1 所示,首先应该从原始测试数据中查看系统响应时间,判读它是否满足用户对性能的期望。如果不满足,则说明系统的性能出现了问题。发现系统存在问题后,接着就要判断系统在哪个环节出现了瓶颈。

现在的 IT 系统架构极其复杂,任何一个环节出现瓶颈,都会导致系统出现性能的问题。要准确地判断瓶颈在什么地方,的确是一个棘手的问题。不过,任何复杂的系统无非是分为网络和服务器两部分。因此要考察的第二个问题就是:系统的瓶颈是出现在网络环节,还是在服务器环节?

如图 4-2 所示,用户从客户端发起的请求数据包经过网络,传递到应用服务器,最后到达数据库服务器,服务器处理完毕后按原路返回到客户端。在这个处理过程中,可以把整个时间分为两段:一段是 Tn,即网络的响应时间;一段是 Ts,即服务器的响应时间,包括应用服务器和数据库服务器的响应时间。对比 Tn 和 Ts,就很容易知道系统在哪些环境的响应时间比例较大。

判断系统的瓶颈是出现在网络还是服务器端后,就可以进一步层层推进,对相应环节更详细的组件响应时间进行深入分析,直到最后找到造成性能问题的根本原因。

借助于 LoadRunner 的分析组件 Analysis,很容易按照“由内而外,由表及里,层层深入”的原则进行分析,快速将问题定位。例如图 4-3 所示的事务,可以直接看出瓶颈出现在网络上。

2.性能分析任重而道远

看了前面的内容,也许很多人会以为性能分析非常容易,借助工具即可完成,但实则不然。即使有了正确的测试结果,也不一定能对系统的性能问题进行正确的定位。例如,服务器的内存不够可能会引起较大的磁盘 I/O,进而导致 CPU 利用率居高不下——而根本原因可能是程序内部存在内存泄漏,而不是内存瓶颈。这类问题不但要靠经验,更要靠对系统的深入了解。

不难看出,性能测试是难度较大的一项工作,绝对不是一蹴而就的事情。根据作者的经验,最好的办法是把性能贯穿于性能测试过程的始末,所有人员都应该给予高度关注。

实际上,性能测试分析从测试场景时就开始了,而不是仅仅在测试结束后才进行。例如,在测试执行过程中可以借助分析数据库,观察事务实时响应时间来发现一些问题。

除了这些通用的方法外,性能测试分析人员应该积极的提高自己:在测试设计、执行、分析等各个阶段把工作做透,这样才可以把性能测试工作做好。

搜索微信公众号:TestingStudio 霍格沃兹的干货都很硬核

用户头像

社区:ceshiren.com 微信:ceshiren2023 2022-08-29 加入

微信公众号:霍格沃兹测试开发 提供性能测试、自动化测试、测试开发等资料、实事更新一线互联网大厂测试岗位内推需求,共享测试行业动态及资讯,更可零距离接触众多业内大佬

评论

发布
暂无评论
软件测试 | 性能分析的基本原则_测试_测吧(北京)科技有限公司_InfoQ写作社区