我相信我已经知道答案,但我不是 100% 确定,所以只是一个简单的问题:红/绿测试实际上意味着什么?
我将其理解为“首先编写您的测试,以便它们都失败(= 全部为红色),然后编写您的代码并观察每个测试如何变为绿色,当所有测试变为绿色时,您就可以了”。
我是在 Scott's MVC Talk at Mix 听到的,所以我不知道这是一个“官方”术语还是他刚刚编造的。 (编辑:Scott 实际上也在 55:00 Minutes 开始解释它,他很好地说明了为什么他相信它)
最佳答案
它确实指的是 TDD 或测试驱动开发,但它适用于每个测试。先写测试,再写代码通过测试。首先编写所有测试是错误的。 TDD 是一种增量开发方法。
基本思想是在失败测试(RED)之前不编写代码。当您的测试失败时,您可以编写代码以通过测试(绿色)。现在您已准备好编写下一个测试——即,在所有测试都为绿色之前不要进行新测试。或者重构,正如@Brian 指出的那样。
关于.net - 什么是红/绿测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/276813/