简单来说,每一次的运行成功的API都在Qtool有记录,1个是成功次数增加1,再是记录下了这次的相应时间。可以结合如下的图来看看新运作的效果:

  可以看到在每一个Interval(Interval长度可以调整的),Create和Delete的大和短以及平均的响应时间,单位为秒。
  在终能得到一个总体的结果:

  可以看到在9个Interval,也是Qtool统计了9次的记录,这里有5个VU仅仅只是跑Create和Delete的场景,后得到的平均响应时间。

  这里的图片是用jfreechart,而Log是用log4j,各种资源基本都是Free的,而功能上基本不比商用工具差多少。
  后说下我们找性能测试的压力点是首先找到系统的保和点。
  饱和点是在Case不变的情况下,通过调整VU的数目或者ThinkTime的时间来动态获得大的吞吐量(成功的次数)。一般情况下,得到的饱和点的曲线都是倒立的抛物线函数,顶点是我们需要找到的饱和点。有时候顶点不是一个点,而是一个平台,类似与减肥减不下来的某个平台,横轴很大的区间,但是纵轴几乎不变。
  需要说明的是,找饱和点是针对固定的Case,实际上,Case,VU数目以及ThinkTime,或者被测系统的硬件或者产品任何一个发生变化,饱和点会漂移。饱和点的interval设置为15分钟以上,每次找饱和点大概需要半天的时间,不断去尝试才能找得到。
  找到后,花1-2小时做单用户的Saniety Test,8小时的Stress (系统资源),然后恢复库做72小时的Endurance(系统资源50%),所以你看到任何一个Perf的defect都是很昂贵的,需要投入很多的时间和完全占用Powerful的机器,也是测试软件是免费的了。
  希望这个框架对有兴趣自己做性能的同仁有帮助。