SIT 是 System Integration Testing(系统集成测试) 的简称,也叫集成测试 / 组装测试 ,位于单元测试之后、系统测试之前,核心是测 "模块间能不能正常对接、数据能不能正确流转"。
一、核心定义
- 对象:多个已完成单元测试的模块 / 服务 / 子系统(含内部模块、第三方接口、数据库等)。
- 目的 :验证接口、数据交互、业务流程在组合后是否正常,提前发现 "单独正常、联调就崩" 的问题(如字段不匹配、协议不一致、调用时序错误)。
- 阶段 :单元测试 → SIT → 系统测试 → UAT(用户验收)。
二、主要测什么
- 接口测试:API / 函数调用、参数格式、返回值、异常码。
- 数据流转:跨模块 / 系统的数据传递、转换、一致性、幂等性。
- 业务流程:端到端主流程、分支 / 异常场景(如超时、重试、回滚)。
- 依赖与契约:服务依赖、版本兼容、第三方集成(支付、登录、短信)。
- 基础非功能:集成场景下的响应时间、吞吐量、稳定性(偏轻量)。
三、SIT 与单元 / 系统测试的区别
表格
| 阶段 | 关注点 | 范围 | 执行者 |
|---|---|---|---|
| 单元测试 | 单个模块内部逻辑 | 函数 / 方法 / 类 | 开发 |
| SIT(集成) | 模块间接口与交互 | 模块→子系统→跨系统 | 开发 + 测试 |
| 系统测试 | 整体功能 + 非功能需求 | 完整系统(黑盒) | 测试 |
简单记:单元测 "零件",SIT 测 "组装",系统测 "整机"。
四、常见实施策略
- 自上而下:从顶层模块开始,逐层集成(适合核心流程明确)。
- 自下而上:从底层模块开始,逐步向上集成(适合底层稳定、上层多变)。
- 混合式(三明治):上下同时推进,中间汇合(大型复杂系统常用)。
- 大爆炸式:一次性全部集成后测试(小项目可用,问题难定位,不推荐复杂系统)。
五、举例(电商下单)
- 单元测试:商品库存、用户账户、支付逻辑各自测完。
- SIT :
- 下单 → 扣库存(接口是否通、库存数是否正确)
- 扣库存 → 生成订单(数据是否落库、状态是否正确)
- 订单 → 支付(调用支付接口、回调是否正常、金额是否一致)
- 系统测试:测完整下单 + 支付 + 发货 + 退款全流程及性能、安全等。
六、一句话总结
SIT 就是把 "零件" 拼成 "部件",重点测接口和数据流转,确保联调无坑,为后续整机测试铺路。