为了账号安全,请及时绑定邮箱和手机立即绑定

单元测试和集成测试之间有什么区别?

单元测试和集成测试之间有什么区别?

拉莫斯之舞 2019-10-14 10:21:33
单元测试和集成测试之间有什么区别?这些测试有不同的名称吗?就像有人称单元测试,功能测试等?
查看完整描述

3 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

一个单元测试是由程序员编写的,以验证一个相对较小的一段代码是做什么打算做一个测试。它们的范围狭窄,应该易于编写和执行,其有效性取决于程序员认为有用的东西。这些测试旨在供程序员使用,它们对其他任何人都没有直接用处,尽管如果他们能完成自己的工作,那么测试人员和下游用户应该会从更少的错误中受益。

作为单元测试的一部分是暗示被测代码外部的东西被模拟或存根。单元测试不应依赖于外部系统。他们测试内部一致性,而不是证明它们在某些外部系统中表现良好。

进行了集成测试以证明系统的不同部分可以协同工作。集成测试可以覆盖整个应用程序,并且需要付出更多的努力才能将它们组合在一起。它们通常需要为其分配资源,例如数据库实例和硬件。与一组单元测试相比,集成测试在证明系统工作(尤其是对非程序员)的工作上更具说服力,至少在集成测试环境类似于生产环境的范围内。

实际上,“集成测试”用于各种各样的事情,从针对类似于生产的环境进行的全面系统测试,到使用未嘲笑的资源(如数据库或队列)的任何测试。在频谱的较低端,集成测试可以是一个junit测试,其中针对内存数据库对存储库进行测试,而在较高端,它可以是一个系统测试,验证应用程序可以交换消息。


查看完整回答
反对 回复 2019-10-14
?
达令说

TA贡献1821条经验 获得超6个赞

单元测试应该不依赖于被测试单元之外的代码。您可以通过寻找最小的可测试零件来决定设备是什么。在存在依赖关系的地方,应将它们替换为错误的对象。模拟,存根..测试执行线程在最小的可测试单元内开始和结束。

当将虚假对象替换为真实对象并且测试执行线程与其他可测试单元交叉时,您将进行集成测试


查看完整回答
反对 回复 2019-10-14
?
HUH函数

TA贡献1836条经验 获得超4个赞

单元测试将测试您完全控制的代码,而集成测试将测试您的代码如何使用或“集成”其他代码。

因此,您将编写单元测试以确保您自己的库按预期工作,然后编写集成测试以确保您的代码与您正在使用的其他代码(例如库)完美配合。

功能测试与集成测试有关,但是更具体地讲,是指在将所有代码一起运行的情况下测试整个系统或应用程序的测试,几乎是超级集成测试。


查看完整回答
反对 回复 2019-10-14
  • 3 回答
  • 0 关注
  • 1730 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信