加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

单元测试 – 私人/保护方法是否应进行单元测试?

发布时间:2020-12-14 01:18:32 所属栏目:百科 来源:网络整理
导读:在TDD开发中,你通常做的第一件事是创建你的接口,然后开始编写针对该接口的单元测试。当你通过TDD过程,你会最终创建一个实现接口的类,然后在某些时候你的单元测试将通过。 现在我的问题是关于private和protected方法,我可能需要写在我的类中支持接口暴露
在TDD开发中,你通常做的第一件事是创建你的接口,然后开始编写针对该接口的单元测试。当你通过TDD过程,你会最终创建一个实现接口的类,然后在某些时候你的单元测试将通过。

现在我的问题是关于private和protected方法,我可能需要写在我的类中支持接口暴露的方法/属性:

>类中的私有方法应该有自己的单元测试吗?
>类中的受保护方法是否有自己的单元测试?

我的想法:

>特别是因为我编码接口,我不应该担心受保护/私有方法,因为他们是黑盒子。
>因为我使用接口,我编写单元测试来验证合同定义是由不同的类实现接口正确实现,所以我不应该担心私人/保护的方法,他们应该通过单元测试,由接口定义的方法/属性。
>如果我的代码覆盖没有显示受保护/私有方法被击中,那么我没有正确的单元测试或我有没有使用的代码,应该删除。

不,我不想测试私人或受保护的方法。类的私有和受保护的方法不是公共接口的一部分,因此它们不会暴露公共行为。一般来说,这些方法是在您使测试变成绿色之后通过重构来创建的。

因此,这些私有方法通过断言公共接口的行为的测试隐式测试。

在更哲学的注释,记住,你是测试行为,而不是方法。所以,如果你想到的测试类可以做的事情的集合,只要你可以测试和断言该类的行为像预期的,是否有私有(和保护)方法,在类内部使用实现这种行为是无关紧要的。这些方法是公共行为的实现细节。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读