当前位置:  开发笔记 > 编程语言 > 正文

测试:单位与整合与其他人,分离需要什么?

如何解决《测试:单位与整合与其他人,分离需要什么?》经验,为你挑选了2个好方法。

问题我是单元测试还是集成测试?我已经回答了,有点挑衅:做你的测试,让其他人花时间分类.

对我来说,各种级别的测试之间的区别在技术上是没有意义的:通常使用相同的工具,需要相同的技能,达到相同的目标:消除软件故障.与此同时,我可以理解大多数开发人员使用的传统工作流程需要这种区分.我对传统工作流程感到不安.

因此,我的问题旨在更好地理解对我来说是什么样的争议,以及收集关于各级测试之间的这种分离是否相关的各种观点.

我的意见错了吗?是否存在其他不强调这种分离的工作流程(可能是敏捷方法)?您对此主题的体验是什么?

精确度:我完全了解这些定义(对于那些没有定义的人,请参阅此问题).我想我不需要有关软件测试的课程.但如果您的答案需要,请随时提供一些背景知识.



1> Alex B..:

性能通常是我将"单元"测试与"功能"测试分开的原因.

单元测试组应该尽可能快地执行,并且能够在每次编译后运行.

功能测试组可能需要几分钟才能执行并在签入之前执行,可能每天或每隔一天执行,具体取决于正在实施的功能.

如果将所有测试组合在一起,我就不会在签到之前进行任何测试,这会降低我的整体开发速度.



2> tvanfosson..:

我必须同意@Alex B,因为在编写测试时需要区分单元测试和集成测试,以使单元测试尽可能快地运行,并且不再需要测试测试代码所需的依赖性. .您希望单元测试能够非常频繁地运行,并且"整合"越多 - 就像它们运行的​​越少.

为了使这更容易,单元测试通常(或应该)涉及模拟或伪造外部依赖.集成测试有意留下这些依赖关系,因为这是集成测试的重点.你需要模拟/伪造每一个外部依赖吗?我不一定说,如果模拟/伪造的成本很高并且返回的值很低,那么使用依赖性并不会显着增加测试的时间或复杂性.

尽管如此,我认为最好是务实而不是教条,但要认识到差异并避免混合,如果你的集成测试使得经常运行测试太昂贵了.

推荐阅读
wurtjq
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有