繁体   English   中英

当集成测试已经存在时,有人可以举一个单元测试增加价值的具体例子吗?

[英]Can someone give a concrete example of a unit test adding value when integration tests already exist?

假设我们没有进行TDD(显然,单元测试是TDD的一部分),并且针对所有用例进行了集成测试。

集成测试假设假设输入一定并验证输出是否符合预期。

我的想法是, 使用与集成测试中的方法相同的数据为集成测试中遍历的方法添加一个单元测试 ,不会暴露任何其他错误。

得出的结论是,只要您有足够的集成测试,就不需要对相同的代码进行单元测试。

因此,有人可以举一个具体的例子,说明在上述情况下单元测试可能会暴露一个错误吗?

集成测试可以看作是验收测试的一种形式。 他们确保软件正在执行应有的功能

另一方面, 单元测试对客户而言并不是特别有用。 一位顾客并不担心, InitializeServerConnection失败,但他们担心,他们无法内部消息发送到他们的同事作为一个结果。

那么单元测试有什么用呢? 它们是一个开发工具,是一站式服务。 单元测试可验证机器中的齿轮是否正常工作。 如果不是这样, 很容易看到它失败

Arialdo Martini提供了一个很好的解释:

过于简化,软件系统可以看作是协作模块的网络。 由于他们合作,因此其中一些人彼此依赖。

[...]

通过集成和端到端测试,您将能够找到所有损坏的功能。 系统测试

但是,这对于猜测错误的位置没有任何帮助。 具有相同错误的同一系统将导致以下单元测试失败:

单元测试

因此,即使单元测试不会增加任何业务价值,它也可以通过减少查找问题根源的手动测试,调试和筛选代码所花费的时间来增加价值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM