Swift - 在测试驱动的开发中解决构建错误?

时间:2015-01-31 02:00:55

标签: ios xcode unit-testing swift tdd

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

2 个答案:

答案 0 :(得分:5)

根据鲍勃叔叔的3 Rules of Tdd

  

块引用

  1. 您不得再编写任何单元测试,而不是足以使其失败; 和编译失败是失败
  2. (强调我的)。所以实际上没有必要“测试成功运行” - 编译错误是编写代码的好借口:)

答案 1 :(得分:3)

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