在TDD开发中,你通常做的第一件事是创建你的接口,然后开始编写针对该接口的单元测试。当你通过TDD过程,你会最终创建一个实现接口的类,然后在某些时候你的单元测试将通过。
现在我的问题是关于private和protected方法,我可能需要写在我的类中支持接口暴露的方法/属性:
>类中的私有方法应该有自己的单元测试吗?
>类中的受保护方法是否有自己的单元测试?
我的想法:
>特别是因为我编码接口,我不应该担心受保护/私有方法,因为他们是黑盒子。
>因为我使用接口,我编写单元测试来验证合同定义是由不同的类实现接口正确实现,所以我不应该担心私人/保护的方法,他们应该通过单元测试,由接口定义的方法/属性。
>如果我的代码覆盖没有显示受保护/私有方法被击中,那么我没有正确的单元测试或我有没有使用的代码,应该删除。