最近,帮助几家企业提供产品测试的咨询服务时,很多客户对BBFV、BBIT、SDV这三个阶段的测试活动的边界十分模糊,尤其是研发人员的自测试究竟需要做到什么程度?SDV(系统设计验证)是由开发人员来做还是由测试人员来做?SDV的测试需要全部覆盖系统测试用例吗?带着这些问题,今天我就来跟大家分享一下对这三个测试阶段的看法。
首先,我们来介绍一下产品测试的四个阶段,其中重点介绍一下BBFV、BBIT和SDV。
产品测试的四个阶段
在产品开发过程中,产品测试一般划分为四个阶段, 包括BBFV、SDV、SIT、SVT, 各个阶段的活动解释如下:
- 构建模块功能确认BBFV(Building BlockFunctional Validation):构建模块是指设计单元,例如一个单元电路,一个软件函数,一个结构零件等等。BBFV通常是以设计人员为主,测试人员参加。
- 系统设计验证SDV(System DesignVerification):子系统或模块级测试,包括基本功能、性能的常规测试、以及各种可靠性类测试,例如针对电子产品的容错/容限测试、EMC测试、安全测试、噪声测试、热测试、环境可靠性测试等等。若是机械结构类产品或部件,SDV应增加疲劳测试、结构强度测试、结构刚性测试等。SDV工作通常是以测试人员为主,设计人员参加。
- 系统集成测试SIT(System IntegrationTest):产品整机测试,测试内容与SDV大致相同,但增加可用性测试、可维护性测试和包装测试。SIT在开发阶段后期,由测试人员负责完成。
- 系统验证测试SVT(System VerificationTest):小批量试制情况下的测试,测试内容与SDV大致相同,但强调从试制生产线随机抽检,关注产品质量一致性,SVT必须在SIT完成之后在验证阶段完成。SVT工作以测试人员为主,试制人员参加即可。
BBFV与BBIT的差异
BBFV包括UT/IT/MST/BBIT,统称模块级验证, 而BBIT是指所有模块的单元测试和集成测试做完自测试之后,在开发系统转测试前,由开发部测试人员对开发人员交付的系统进行转测试验收的测试活动,保证转测试的系统满足可测试性要求,如果是分几段合入得子特性,也可以做BBIT测试,以避免新合入的特性对主线版本较大的质量冲击,BBIT 测试是一个很好的测试把关环节,如果BBIT不通过,可根据情况打回版本或特性,并针对DI(遗留缺陷)进行质量回溯,避免重复错误。
由上图所示,BBFV的范围更广,统称为构建模块功能验证, 包括了多个测试活动,如开发人员的单元测试,集成测试,模块系统测试和BBIT等;而BBIT测试只是开发人员最终转测试时的一个点,是验收开发人员是否符合需求规格的自验证,一般是由开发经理指派相关的技术人员完成BBIT的测试。
BBIT与SDV的边界是什么?
通常有人会问,BBIT是由开发人员来做,那究竟要做到什么程度?而SDV大部分的公司由测试人员来做,它与BBIT的边界在哪里?根据共创力咨询长期积累的经验,我们认为BBIT是针对研发人员的每个版本的集成验证,由开发人员自已完成,每增加一个特性,都需要作BBIT。SDV是需要完整版本的整机设计验证。可能BBIT自测了多轮(多次合版本),但SDV只做了一轮,是由测试人员完成的。SDV覆盖的用例比BBIT更广。以下是两者的测试范围:
BBIT:BBIT验证构建模块的外部接口和与其他构建模块之间的接口,包括与已有系统的接口,以及其他需要测试的功能及性能部分。通过回归测试确保增加新的Building Block后,已有系统能正常运行。一般来说,BBIT的用例应包括20%以上的功能及性能、接口测试用例,能支持测试部门的冒烟测试通过。可以理解为:BBFV = UT + MIT + MST + BBIT,统称模块级测试,目的是验证物理实现模块的功能设计是否符合分配需求(设计规格)的要求。
SDV:SDV是“原型样机” 测试,测试主体是模块集成后的系统/子系统,测试重点是系统功能,包含部分性能和可靠性测试,SDV测试结束后90%的测试工作已完成。SDV需要覆盖哪些测试用例?根据我们的经验,SDV属于系统级测试,可以从事以下的测试活动:
BBIT的主要活动及交付
BBIT(Building Block Integrate and Test),构建模块集成和测试。BBIT是增强的、规范的联调和验证活动。目的在于向测试提供比较稳定的、满足SDV测试要求的、有一定节奏的Build版本。BBIT活动由开发工程师主导,测试工程师参与共同完成。BBIT是在TR3~TR4、转SDV测试前,开展的联调和验证活动。如下图:
BBIT的输入和输出包括:
输入文件:
- 版本发布计划
- BBIT测试方案
- BBIT测试用例
- 单元测试报告
- 集成测试报告
输出文件:
- 版本说明书
- 版本配套表
- BBIT测报告
- 可测试的产品包文件