假设您有针对类的两种方法的测试。第一种方法从另一层收集数据,并将其放入独立于运行时的某种存储中(例如SQL表),因此,此测试处理的所有数据都被硬编码到测试中。第二种方法负责从第一种方法保留的位置获取数据并以某种方式进行转换(计算,将某些零件移动到其他位置等)。
现在,第二种方法可以像第一种方法那样对输入进行硬编码,或者可以假设这两个测试将按顺序运行,并且可以从第一个测试中断的位置开始,获取第一个测试真正存储的数据。
如果您选择了第二个选项,那么您确实会很好地认为这两种方法可以很好地协同工作,但是,如果第一个测试失败了,则所有测试都将失败,从而失去了帮助更快地隔离错误的测试优势。
如果选择第一种方法,则每种方法都将被隔离和独立测试,但是您永远不会真正知道它们是否可以真正正常地协同工作。
这里哪个更好?是否存在某种替代方法,例如对每个隔离的方法都使用硬编码进行一次测试,然后将两个方法合而为一的更大的测试?