1.6 正确度量如何知道我们是否取得进步了呢?如何衡量成功?我们需要一些度量。我们的构建过程会对测试进行统计,所以很容易跟踪每一个层次的测试数量:JUnit、FitNesse断言和测试页面、Cannoo WebTest断言等。这些原始数据并不能代表整个趋势。我们,包括业务经理,都希望看到这些数字在每次迭代中都在增长。在每一次迭代中,指定一份染色的日历——如果某天所有的回归测试至少通过了一次,则将其日期标记为绿色,否则标记为红色。业务人员也非常关注这些数据,如果他们在一行里面看到两个标记为红色的日期,他们会向我们询问原因。他们也会记录每一次迭代中JUnit、FitNesse和Canoo WebTest的测试数量。当测试数量减少时,他们也会关注并询问原因。【真知灼见】让经理看到自动化测试的好处。你需要不断“推销”自动化的好处。让测试结果对外可见也是一种宣传的形式,可在整个公司范围内加强公众对自动化回归测试的了解。客户看到测试数量增加,并且发布的功能点越来越多。所以,当我们申请时间来重构产品或者改善构建过程时,我们的客户就能够理解了。我们需要快速的反馈,所以每一次构建花费的时间是一种重要的度量。如果运行JUnit测试的持续构建花费的时间超过10分钟,就开始备份检入信息,那么就很难找出是哪一个测试导致了失效。当JUnit构建花费的时间超过10分钟时,我们停下来查看是什么原因导致了运行缓慢。我们重构测试、添加硬件、升级操作系统、配置测试使其并发运行等,这些都会使反馈循环更快。对运行更高级测试的构建也是这么做的。如果FitNesse测试要花好几个小时来运行,那么反馈太慢。我们要在测试覆盖和速度之间权衡。幸运的是,虚拟机可以同时运行多个测试套件,减少反馈周期并且非常廉价。【小窍门】不要使自动化停滞不前:在需要的时候进行重构、使用新的硬件、重组测试。记住我们的目标(这里指更快速的反馈),并修改自动化测试来达到我们的目标。
相关资源:自动化测试最佳实践:来自全球的经典自动化测试案例解析