Swift - 绕过测试驱动开发中的构建错误?

Swift - Getting around build errors in test-driven development?

我开始学习如何进行测试驱动开发,并且我正在使用 Swift。我假设有一个应该失败的测试,然后编写让它通过所需的代码。根据我的理解,测试应该成功 运行,只是失败了。但是,在 Swift 中,当我尝试编写一个测试,比如说,检查一个对象的特定属性的值时,如果 class 还没有这样的属性(因为我想在我为此创建测试之前先编写测试 class) 我没有得到失败的测试,而是在尝试构建和 运行 测试时出现构建错误。错误是测试试图访问给定对象不存在的属性。我会以错误的方式解决这个问题吗?或者这些测试构建中断错误是否应该是我在 Swift 中执行 TDD 时遇到的错误?谢谢!

TDD 是个好主意,但不要忘记应用一些常识。在这种情况下,将构建错误视为测试失败。在某些时候,您必须创建 class 和属性才能构建代码。然后,详细说明你的测试,让它做一些失败的事情,编写让它通过的代码,然后继续。

根据 Bob 叔叔的 3 Rules of Tdd:

  1. You are not allowed to write any more of a unit test than is sufficient to fail; and compilation failures are failures.

(强调我的)。所以实际上不需要 "the test to successfully run" - 编译错误是编写代码的好借口:)