我正在尝试正确地做 TDD!我正在阅读有关 TDD Inside Out 而不是 Outside In 的内容。原因是我不知道我的层是如何预先设置的,所以我的想法是开始编写测试,让它失败,然后开始编写我的第一层。
在编写我的第一层时,我注意到我需要另一个层,我们称之为服务层。这就是我感到困惑的地方,我该怎么办?
我是否停止并创建一个失败的新测试,以便我可以使用 TDD 实现我的新服务层?完成后,我回到原来的层,我应该在这里创建我的服务层的模拟吗?还是使用我刚刚通过 TDD 创建的服务层?
这是TDD吧?因此,如果我在嘲笑事情,那么也许我的 TDD 并没有推动我的发展?但是,当然,如果我不进行模拟,这些技术上不是单元测试,而是更多的集成测试?
如果确实我的单元测试(通过 TDD 编写)使用模拟,那么我需要进行一些其他类型的测试来测试每个单独层作为一个单元的集成?
集成测试还是 e2e 测试?
我认为我的问题基本上是当我需要引入新层时,我应该模拟这些,我应该创建一个新的测试来推动这个新层的开发吗?
我希望有人可以帮助解开我自己陷入的这个混乱!
谢谢