我已经进行了一年的TDD测试,对此我感觉很好,我喜欢我的测试套件以及所有其他工具。但是,我注意到最近我一直在做很多模拟通话验证。例如,我有一个将注入存储库的服务-在我的单元测试中,我将传递一个存储库的模拟并验证它在我正在测试的方法中被调用。然后,我将检查返回的结果是否正确(在另一个测试中)。这绝对是“感觉”错误,因为我的单元测试现在与实现细节非常相关。我听说您应该测试“行为”,但是在许多情况下……嗯-不可能吗?如果你有一个void
例如,您通常会测试副作用。我的意思是继续进行并展示一些简单的代码集很容易就能证明这一点,但是恕我直言,它不能很好地反映我们编写的真实程序。我做错了吗?这种测试是一种反模式吗?感谢您对此的意见,在TDD方面,我还是一个新手。