https://www.cnblogs.com/yuxiuyan/tag/分层测试/
集成测试是在模块接口的基础上,将所有涉及模块按照设计要求(比如根据架构图)组装成子系统,对系统接口进行正确性校验的测试技术。
通过集成测试可以暴露出这些模块在集成交互时的缺陷,这些缺陷在对各自模块进行接口测试时可能是无法暴露的。
可以看到,集成测试的用例模块是跟业务模块独立存在的,并且逻辑也比接口用例要复杂,通过模拟外部使用者行为(有可能是用户,也有可能是其他子系统)的方式,来测试对应的系统或子系统。
在业务实践中允许同时开发模块,因此需要在早期阶段执行集成测试、检测问题并在开发过程中对业务逻辑进行更改。
这体现了产品开发进度,因为可以更早地检测和修复错误,而无需等待一个模块完成。
此外,如果缺少模块或存在开发中的模块需要联调,可以用Mock来替换它们。
单元测试通常速度快且运行时间短。可以在持续集成环境中为每个构建运行它。它旨在对代码进行基本验证,检测业务逻辑中的错误。
但是集成测试需要更长的时间才能运行,并且将它们包含在每个构建中会导致大量时间消耗。可以将它放在靠近日常构建的地方,来降低构建耗时的影响。
集成测试的范围很广,因为它跨越应用程序中的多个模块。与单元测试不同,在集成测试中没有简单的方法来分析故障的根源。
因此,记录测试结果是发现问题的唯一方法。可以使用一个有效的日志记录框架,提供有关每个测试完成的详细信息。