找到性能测试的门道

发表于:2010-6-13 13:32

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:lifr    来源:51Testing软件测试博客

  * 发现性能测试的核心

  具体的工作是另外一个同事在做,但我一直也在思考,如何能让目前的性能测试更好更强大。某天在纸上写写划划的时候,突然脑袋里灵光一闪,煞那间,所有的障眼法似乎都烟消云散,留下了三个闪闪发光的单词。

  1、虚拟用户(virtual user): 同时使用系统的用户数目

  2、响应时间(response time): 一个用户请求,从发出到接受,经历的时间

  3、吞吐量(throughput): 系统单位时间处理的用户请求数目

  这三个量,形成了下面两个曲线。

  1、虚拟用户与响应时间的关系曲线,

  2、虚拟用户与吞吐量的关系曲线。

  一个特定系统的性能到底怎么样,就由这两个曲线来描述; 有了这两个曲线,你就可以回答关于性能最主要的一些问题:

  这个系统最大能支撑多少用户

  用户响应时间不要超过6秒,最多能支持多少用户

  未来半年,用户数会增加10000,需要加硬件吗

  你给我一个 数值,我的系统到底性能如何?我不要看那么多的图表

  … …

  发现自己找到了"性能测试的奥秘",我按捺不足兴奋。跑去和一个用Loadrunner做过项目的同事交流,他肯定了我的观点,说以前用loadrunner做项目就是这样分析的(为什么不早告诉我啊…:( )。并且指出统计响应时间时,一般统计按照正态分布的90%的用户的平均值(所以Jmeter的Aggregate Report里有一个90%line)……

  后来同老大的交流中,他特别强调了request的失败率。这是一个客户关心的问题。没有关系,小case,只要抓住了问题的核心,这些附属的指标加多加少,都不会干扰测试项目的开发,和对系统性能的分析。

  * 当前项目新的调整

  分成两个子项目

  1) 子项目1

  首先要把测试vu平均分成n组,

  当一组启动后,运行 t分钟,获取响应的throughput和90%线内的平均值。

  启动下一组,把每一组获取的数据收集,绘制出两张核心的曲线图。

  顺便牢骚一下,当前版本Jmeter对此还没有完美的支持。我是启动多个Jmeter实例来达到这个目的。

  2) 子项目2

  根据曲线图,估计出系统性能最佳时的vu(满足response time的最大throughput的vu数目)。这个vu作为性能regression test的基础。

  项目还在进行中。希望这是我进入性能测试领域的一个好的开始。

  * 性能趋势图

(以上言论仅代表作者的个人观点,不代表51Testing观点)


版权声明:本文出自lifr的51Testing软件测试博客:http://www.51testing.com/?764

原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。

22/2<12
《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • havards
    2010-6-30 14:57:19

    很多时候就是在看了一堆东西,迷惑了N长时间,突然恍悟,感觉如同疯狂的石头中队长终于尿出来一样

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号