我正在使用c#学习TDD,据我所知测试应该驱动开发,即在编写最基本的代码以通过测试之后再进行重构,然后首先编写一个失败的测试。
但是也有人说“ 程序到接口,而不是实现 ”,因此请首先编写一个接口。这是我开始困惑的地方,如果我先写接口,那将违反两件事
为接口编写的代码不受test的驱动。
这显然不是最低要求,我可以用一个简单的类编写它。
我也应该从编写接口测试开始吗?没有任何实现,我要测试什么?
如果这个问题听起来很傻,对此我感到非常困惑。可能是我从字面上讲。
contract
。例如,它可能以抽象类的形式出现,尽管它不应该是虚拟类/方法,因为您不应该实例化它。
interface
。Aclass
还提供了一个界面,因为您可以在private
变量中隐藏实现细节。