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

oop – 通过其他测试类测试类

发布时间:2020-12-13 20:07:47 所属栏目:百科 来源:网络整理
导读:假设我使用TDD来创建一个A类.在完成并有一个“绿色”栏后,我决定使用一些重构工具从A类中仅使用静态方法提取一些B类.我现在已经对A类和B类进行了全面的单元测试,但只通过A类的测试类.我现在还应该创建一个特定于B类功能的测试类,即使这会重复测试吗? 一如既
假设我使用TDD来创建一个A类.在完成并有一个“绿色”栏后,我决定使用一些重构工具从A类中仅使用静态方法提取一些B类.我现在已经对A类和B类进行了全面的单元测试,但只通过A类的测试类.我现在还应该创建一个特定于B类功能的测试类,即使这会重复测试吗?
一如既往,这取决于您的背景.你在乎什么?

整体行为

如果您正在构建一个供内部使用的系统,甚至是一个公共(Web)服务,您所运送的软件就是整个系统,那么您不必过多关注单个类.如果您正在构建系统,请测试系统.

只要它被测试覆盖,您就知道您的系统行为正确.但是,您可能会遇到这样的情况:几个月之后,您意识到您不再需要原始A类,因此您将其删除并进行相应的单元测试.这可能导致B的测试覆盖率下降,因此关注代码覆盖率趋势可能是个好主意.

单位行为

如果您正在构建(类)库或框架,那么您将每个公共类作为产品的一部分进行发布.如果您的库中有多个用户,则需要开始考虑如何避免更改.

避免破坏变化的最有效方法之一是通过单元测试覆盖每个类.只要您don’t change the tests,您就知道如果所有测试都是绿色的话,不太可能发生重大变化.但是,这需要您测试所有公共类和成员.

因此,如果您将B提取到公共类,它现在是其他消费者可能依赖的类,如果您更改它将是一个重大变化.因此,您应该用新测试来覆盖它.如果您正在构建一个单元,那么请测试该单元.

(编辑:李大同)

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

    推荐文章
      热点阅读