我们正在使用VMWare和NUnit开发自动化回归测试.我们将测试分为几个步骤,现在我想看看每个步骤的性能回归.像NUnit一样,简单地对测试进行计时似乎并不可靠.我认为接受系数约为15%,但我们的步骤有时会有所不同,超过35%.在这种依赖资源的测试环境中,有没有一致的测试性能方法?"智能"计时系统是我唯一的选择吗?
对于这种性能测试,没有系统会给你一个简单的通过/失败结果.在现实生活中,改变你的系统可能会使某些事情变得更快而其他一些事情变得更慢,所以它通常不是"更好"和"不更好"之间的选择,它是不同类型之间的选择.(当然,你想要避免严重恶化的情况.)
我过去所做的就是随着时间的推移保持统计数据.每次运行测试时,都会将结果放在带有修订号和测试计时的SQL数据库中.然后,您可以随时随地绘制它们(理想情况下,在一个小小的Web小程序中,以便团队中的每个人都可以查看它们)并查看您的性能是趋势上升还是下降,或者自特定修订以来性能是否已经下降.
但是,关键在于它需要是一个图形.通过这种方式,人眼可以看到它并找到趋势.您可以花一周时间尝试用AI算法来数据分析数据,但它永远不会超过人类的模式识别能力.