来自 Google 的单元测试技巧

  • Kurt Christensen
  • 乔梁

2007 年 4 月 27 日

话题:敏捷Google语言 & 开发文化 & 方法

这是个古怪的名字,但内容非常严谨。最新的内容“利用 Red Bar 状态重构你的测试用例”解决了一个常见的问题。即一旦单元测试套件变得庞大,如何在不破坏测试的前提下进行测试代码的重构呢?

如果你故意使代码不能通过测试,这个未通过的测试就会告诉你,你写的断言还在起作用。例如,如果你在 CombineHarvesterTest 中重构了你的方法,你就会改变 CombineHarvester,让它返回错误的结果。

检查发现,这个测试失败的原因是你希望这个断言不能通过。这时,你就可以小心地重构这个不能通过的测试用例。只要它一通过,你就会知道这个测试用例不对了——取消它! 当你做完测试的重构以后,一定要记得修改你的源代码,使它可以通过你已经重构的测试用例。

敏捷Google语言 & 开发文化 & 方法