2008-09-16 121 views
2

我们正在开发使用VMWare和NUnit的自动化回归测试。我们已经将测试分为多个步骤,现在我希望看到每个步骤都要进行性能回归检查。就像NUnit那样简单地计时测试,似乎并不可靠。我认为接受率约为15%,但我们的步骤有时可能会有所不同,超过35%。在这样的资源依赖测试环境中,是否有任何一致的测试性能方式? “智能”计时系统是我唯一的选择吗?性能测试

回答

5

对于这种性能测试,没有系统会给你一个简单的通过/失败结果。在现实生活中,改变你的系统可能会让某些事情变得更快,而其他事情会变得更慢,所以它通常不是“更好”和“更好”之间的选择,而是更好的选择。 (当然,你想避免严重更糟的情况。)

我过去为此做了什么就是只保留一段时间的统计数据。每次运行测试时,都将结果放入SQL数据库中,其中包含版本号和测试时间。然后,您可以随时随地对其进行绘制(理想情况下在一个小小的网络小程序中,以便团队中的每个人都可以查看它们),并查看您的表现是否呈现上升趋势或下降趋势,或者自从特定修订以来表现是否一直很糟糕。

这里的关键是,它需要是。这样人眼可以看它并找到趋势。你可以花一周时间想出一个AI算法来分析数据的数据,但它永远不会超过人类的模式识别能力。

0

您可能会考虑使用诸如Ants Profiler之类的工具提供的功能,因为它确实提供了方法执行/运行时间,但我不确定它在重复测试方面的优势。

0

关于性能测试,我一直非常怀疑使用vmware或其他虚拟化过程。我们过去处理这个问题的方式是让部分版本在静态机器上安装最新版本并运行测试。您应该在虚拟化之外看到更一致的结果。