与此类推,我们同样在图中可以发现其他的增强环路与调节环路:
而在这四条回路之外,还会有其他因素对这个结构造成影响:
画出系统循环图以后,就可以结合团队的状况进行整体分析:
首先回到质疑的声音上来,有人说,“整套系统实在是太庞大复杂了,写到现在为止,连1/4都没覆盖到,所以上线还是手工回归”,这里反映出的正是从“自动化测试数量”到“手工测试时间”这条线上的时间滞延的效果。在前文中提到过,时间滞延在反馈环路中会造成矫枉过正,这里是它的第二个作用──给人带来挫败感。它会导致某个行为在短期内看不到任何效果,当滞延的时间过长时,会令人失望乃至放弃努力。消除时间滞延可以对系统起到卓有成效的改善。在这个案例中,我们可以通过推动手动测试用例向自动化测试的转化来缩短滞延。
然而,当时间滞延的作用被削弱以后,还有另外的问题等着去解决。下面再来看看这支团队从“写自动化测试”到“不写自动化测试”的变化过程中发生了什么。
在刚开始写自动化测试的时候,团队主要的感受是QA少了手工测试的时间,质量多了保障,所以增强环路发挥了作用,每个story完成以后,开发人员都会为所对应的场景写几个测试。但当测试数量增加到一定程度,调节环路的反馈力量开始占据主导地位──测试时间变长、维护成本增加。而且测试数量越多,带来的问题就越大,最后便有了第一次的选择:放弃自动化测试。