1、产品测试工程与实践产品测试工程与实践和谐共赢和谐共赢 分享成长分享成长bmibmi产品测试产品测试内容提要内容提要 bmi 1、产品质量与测试 2、产品测试流程与方法 3、产品测试管理体系 4、产品测试度量与绩效 bmiModule I产品质量与测试产品质量与测试产品质量与测试 bmi 1、产品质量分析 2、理解产品测试 3、产品测试策略产品质量产品质量感性认识感性认识 bmi产品质量产品质量搭建产品与客户的桥梁识搭建产品与客户的桥梁识 bmi 质量符合要求的程度产品/服务固有特性客户要求和期望符合符合符合指导指导指导0 50% 100%1、谁是客户? 2、如何操作?符合产品质量产品质量搭建产
2、品与客户的桥梁识搭建产品与客户的桥梁识 bmi符合指导验证客户需求客户需求产品测试产品开发沟通指导实现产品质量产品质量客户质量客户质量 bmiP包装L生命周期成本客户质量质量越高越好吗?P包装P性能E易用L生命周期成本S接受程度S价格A可获得性A保证客户质量产品质量产品质量标杆分析标杆分析 bmiP包装P性能E易用A保证L生命周期成本S接受程度S价格A可获得性客户质量产品质量产品质量研发质量研发质量 bmi产品需求产品需求 A C E B D客户/市场管理者制造/服务测试开发测试定义测试定义两种观点两种观点 bmi 什么是测试?什么是测试?Glen MyersGlen Myers - -测试是
3、为了测试是为了发现错误发现错误而运行产品而运行产品/ /执行程序的过程执行程序的过程 -一个好的测试用例很可能找到尚未发现的错误一个好的测试用例很可能找到尚未发现的错误 -一个成功的测试是指发现了至今未发现的错误的测试一个成功的测试是指发现了至今未发现的错误的测试HetzelHetzel - -测试是对系统测试是对系统建立信心建立信心的过程的过程 -测试是评估软件或系统的品质或能力的一种积极的行测试是评估软件或系统的品质或能力的一种积极的行为为 -测试是对产品测试是对产品/ /软件质量的度软件质量的度测试定义测试定义融合融合 bmi 我们认为测试是为了:我们认为测试是为了: -发现系统存在的问
4、题(测试的态度)发现系统存在的问题(测试的态度) -树立对系统树立对系统的信心的信心 -增强团队对系统的熟悉程度,了解系统固有缺陷增强团队对系统的熟悉程度,了解系统固有缺陷(known issuesknown issues) 测试定义测试定义调试与测试调试与测试 bmi 目的的差异目的的差异 过程的规范性过程的规范性 过程的可重复性过程的可重复性具体操作主体具体操作主体 采用的技术采用的技术 测试策略测试策略WHY? WHY? bmi产品经理:测到什么时候,产品才没问题?产品经理:测到什么时候,产品才没问题?测试工程师:如果再测一遍,肯定还能发现问题!测试工程师:如果再测一遍,肯定还能发现问题
5、! -我们如何面对这种局面?我们如何面对这种局面? 测试策略测试策略 bmi测试策略测试策略 -明确测试重点明确测试重点 -选择测试方法选择测试方法重要的测试策略重要的测试策略 -客户化测试客户化测试 -尽早测试尽早测试 -Good Enough-Good Enough -80/20 -80/20测试策略测试策略客户化测试客户化测试 bmi系统中有很多错误系统中有很多错误客户遇到的错误只占很小比例客户遇到的错误只占很小比例 针对客户最容易遇到的错误进行测试,以便改进测针对客户最容易遇到的错误进行测试,以便改进测试的有效性试的有效性IBM:IBM:客户看到的客户看到的57%57%以上的故障是由占
6、总数以上的故障是由占总数2%2%以下的以下的错误引起的错误引起的比如:比如:静态电流过大引起的静态电流过大引起的3 3个表面问题?个表面问题?测试策略测试策略测试等级测试等级 bmi-不同系统不同系统/ /子系统需要不同的测试质量要求子系统需要不同的测试质量要求Class AClass A灾难式的影响灾难式的影响Class BClass B危险的影响危险的影响Class CClass C重要的影响重要的影响Class DClass D次要影响次要影响测试策略测试策略测试等级测试等级 bmi接触保护和外来物保护0-无保护1-防50mm直径的物体2-防12.5mm直径的物体3- 2.5mm4- 1
7、mm5-6-防水保护等级0-无保护1-垂直下落的水滴不引起损坏2-3-等等测试策略测试策略尽早测试尽早测试 bmi不能依赖产品系统测试前期的评审模块级的测试 在产品部署之后发现问题再修复,这通常要多花费100到1000倍的成本。要防患于未然。在特定的时间达到既定目标,在整个项目生命周期不断对质量进行检验和管理必不可少。测试策略测试策略Good EnoughGood Enough bmi权衡投入/产出比的原则,不要不充分不要太过分 效益测试程度测试策略测试策略ParetoPareto bmi一般情况下,在分析、设计、实验阶段的评审和测试工作,能发现避免80%的错误,而系统测试能找出16%的错误,
8、最后有约5%的错误在用户大范围、长时间的使用后才会暴露出来,因此测试只能保证尽可能多地发现问题,不能完全发现问题。 测试策略测试策略小结小结 bmi测试的复杂性 1、测试的完备性 2、增加新问题测试的几个策略 1、客户化测试 2、测试的等级 3、尽早测试 4、投入产出比 5、80/20原则 bmiModule II产品测试流程与方法产品测试流程与方法 bmi产品开发与测试 产品测试工程模型 产品测试过程分析 模块级测试过程分析 测试自动化及相关工具 产品开发与产品测试 bmi产品开发生命周期 产品测试工程模型-IPO bmi产品开发生命周期 产品测试工程模型-测试过程 bmiDefect tr
9、acking 测试工程 1、测试计划 2、测试设计 3、测试开发 4、测试执行 5、测试评估 6、测试报告 7、缺陷跟踪 产品测试工程-测试输出 bmi1.测试计划:指明测试范围,方法,资源,以及相应测试活动的时间进度安排表的文档。 计划测试 计划测试 1.测试计划:指明测试范围,方法,资源,以及相应测试活动的时间进度安排表的文档。计划测试2.测试方案:指明为完成软件或软件集成的特性的测试而进行的设计测试方法的细节的文档。设计测试1.测试用例:指明为完成一个测试项的测试的输入,预期结果,测试执行条件等因素的文档。实现测试1.测试报告:指明执行测试结果的文档。记录测试1.测试规程:指明测试活动执
10、行序列的文档。 指导测试产品测试工程模型-测试等级 bmi 测试策略和计划系统测试计划系统测试执行系统测试设计系统测试环境准备集成测试计划集成测试执行集成测试设计集成测试环境准备模块测试计划模块测试执行模块测试设计模块测试环境准备需求规格总体架构模块测试系统测试集成测试模块设计实现产品开发与产品测试-异步开发 bmi基本组件1/基础技术1基本组件2/基础技术2核心组件m/核心技术m 产品平台是整个系列产品所采用的的共同要素的集合,包括共用的系统构架、子系统、模块、组件、核心技术。通过公共产品平台,可以减少开发工作量,缩短上市周期TTM产品平台产品开发与产品测试增量开发模式 bmi试产验证测试S
11、VT产品发布 非正式确认增量发布硬件开发就绪评审软件开发测试开发产品Transfer to testTR4 产品需求规格TR5TR6正式确认模块软硬件开发测试中试样机测试SIT工程样机测试SDV特点:流程并行,测试人员参与到开发中,即强烈地介入开发前段。UTMITMST-BBITBBFV产品开发与产品测试-增量测试 bmi试产验证测试SVT产品发布 非正式确认增量发布硬件开发就绪评审软件开发测试开发产品Transfer to testTR4 产品需求规格TR5TR6正式确认模块软硬件开发测试中试样机测试SIT工程样机测试SDVBBFV和SDV是Build的活动,对每个Build都要进行BBFV
12、和SDV的活动UTMITMST-BBITBBFV产品开发与产品测试-原型开发与测试 bmi开发验证评价方案识别风险清除风险决定目标方案和约束下一阶段 计划产品级测试-概念阶段 bmi68weeksPDT参与项目和制定概念阶段计划参与市场需求分析与验证负责收集可测性方面的需求共同开发产品需求包需求和产品概念并进行技术评审初步制定测试策略参与概念决策评审产品级测试-测试需求分析 bmi测试需求可测性需求产品需求测试需求可测性需求产品需求概念阶段-DFT bmi可测性:系统和设备能及时准确地确定其工作状态(可工作、不可工作、工作性能下降)并隔离其内部故障的一种涉及特性。-以提高可测性为目的进行的设计
13、称为可测性设计,简称DFT(design for testability),优化设计使电路/模块便于测试,便于发现定位、隔离和解决异常问题。-DFT是设计特性,完全由产品设计决定。最终用户是不可见的。举例-DFT面向全生命周期不同测试过程,是调试/验证测试、生产测试、维护测试的基础。-可测性也可以通过可控性、可观性来度量。要改善产品的可测性指标,必须在产品设计阶段就进行良好的可测性设计。问题:什么是DFT?概念阶段-DFT bmi内嵌自测试BIST、测试观测点、测试控制点、故障隔离点。测试需求可测性需求产品需求概念阶段-DFT bmi内嵌自测试BIST、测试观测点、测试控制点、故障隔离点。单元
14、级测试控制台系统级测试控制台子系统级控制台模块级控制台外部输入输出通道内置自测试隔离与定位测试控制点测试观测点内置自测试隔离与定位测试控制点测试观测点系统系统测试模块测试内置自测试隔离与定位测试控制点测试观测点单元测试概念阶段-DFT bmi产品测试需求-产品进行哪些测试,可以从测试需求中裁减而来。-产品如何进行这些测试,要说明以下问题: 哪些测试测试是手动测试,哪些是自动测试? 测试数据源是内置在系统中,还是外部提供? 测试数据的采集和处理是内置的,还是外置的? 测试数据采集装置的控制是内置的,还是外置的? 测试数据源的控制是内置,还是外置? 测试数据的处理是内置,还是外置?产品可测性需求-
15、调测接口。-命令集-调测控制-测试信息存储与输出-系统资源概念阶段-测试策略分析 bmi产品测试策略产品测试策略(在计划阶段进一步考虑)1、目的2、范围3、关键技术与研发策略分析4、测试设计策略 4.1特性1测试方案 4.n特性n测试方案5、BBFV测试策略6、BUILD测试策略7、SIT系统集成测试策略8、BETA测试策略9、测试环境筹备计划 测试环境需求分析/工具仪器的可获得性风险评估10、自主开发工具详细分析11、附件产品级测试-计划阶段 bmi1012weeksPDT确定、分配、增加外围测试成员计划阶段开工制定计划阶段计划参与技术评审2测试专利分析参与技术评审3及制定领域的E2E计划参
16、与计划决策评审负责制定验证测试计划开发产品测试方案测试工具设计计划阶段-测试与验证计划 bmi1、目的2、范围3、关键日期、里程碑和交付件4 4、总体测试策略、总体测试策略5 5、 E2EE2E测试计划测试计划WBSWBS6、资源需求计划 6.1 人力资源需求计划 6.2 工具与仪器设备需求计划 6.3 其他需求计划7、组织和职责8、依赖性和存在的问题9、风险管理10、附件计划阶段-测试方案 bmi1、被测对象分析2、测试特性分析 应测试的特性 不应测试的特性3、测试设计综述4、测试模型5、测试需求6、测试设计与执行 6.1 测试工具/代码设计 6.2 测试特性分析 6.3 设计与执行 原则
17、方法测试方案产品测试范围 bmi1、指标测试2、功能测试3、性能测试4、压力测试5、容限/边界测试6、容错测试7、故障相关性测试8、配置测试9、自动化测试10、EMC测试11、环境测试12、可靠性测试13、安全性测试14、兼容性测试15、一致性测试16、可用性测试测试方案产品测试范围 bmi十、EMC测试 EMC定义:电磁兼容(EMC)是对电子产品在电磁场方面干扰大小(EMI)和抗干扰能力(EMS)的综合评定,是产品质量最重要的指标之一,电磁兼容的测量由测试场地和测试仪器组成。 -主要的测试项 CE-传导发射 ESD-静电 EFT-瞬态脉冲干扰群 DIP-电压跌落 CS-传导敏感度 RS辐射敏
18、感度 Surge-浪涌测试方案产品测试范围 bmi十一、环境测试 目的:是将电子产品暴露于人工模拟环境中,一次评价元器件、设备的性能。 -实验顺序 预处理 初始检测 试验(条件试验) 恢复 最后检测 环境试验包括:高温、低温、温度冲击(气态及液态)、浸渍、温度循环、低气压、高低温低气压、恒定湿热、交变湿热、高压蒸煮、砂尘、耐爆炸、盐雾腐蚀、气体腐蚀、霉菌、淋雨、太阳辐射、光老化等。 测试方案产品测试范围 bmi十一、环境测试 目的:是将电子产品暴露于人工模拟环境中,一次评价元器件、设备的性能。 -实验顺序 预处理 初始检测 试验(条件试验) 恢复 最后检测 环境试验包括:高温、低温、温度冲击(
19、气态及液态)、浸渍、温度循环、低气压、高低温低气压、恒定湿热、交变湿热、高压蒸煮、砂尘、耐爆炸、盐雾腐蚀、气体腐蚀、霉菌、淋雨、太阳辐射、光老化等。 测试方案产品测试范围 bmi十二、可靠性测试 -定义:是对产品的可靠性进行调查、分析和评估的一种手段。 -目的: 发现产品在设计、材料、工艺方面的缺陷。 确认是否符合可靠性的定量要求。 为改善产品的可靠性提供信息。-1、环境应力筛选(Environment stress screen) 向产品施加环境和电应力,将其内部缺陷加速变成故障。 施加应力大小和检测能力,决定筛选效果。-2、可靠性验证试验 可靠性鉴定试验、可靠性验收试验,均属统计试验。 测
20、试方案产品测试范围 bmi十二、可靠性测试 -3、可靠性增长试验 基本过程故障报告闭环系统 (再)设计故障检测测试方案产品测试范围 bmi十三、安全性测试 -安全性审查及试验项目:燃烧试验、标记检查、抗抗电强度等测试方案产品测试范围 bmi十五、一致性测试 -定义: 在大批量的生产中,或长时间工作,或在不同环境下,对产品的器件,单板和系统性能指标的一致性验证与测试的过程。-目的: 在产品拷贝过程中,通过测试样本之间的差异性,获得这些不一致性对对产品运行效果的影响,通过找出不一致性的规律和原因(人、机、料、法、环、测等5M1E因素),找到使产品趋于一致性的改进办法,是产品在批量拷贝时达到一定的产
21、品稳定性。 稳定的偏差不可怕,最令人头疼的是产品性能不可控!测试方案产品测试范围 bmi十五、一致性测试 -测试内容和方法: 1、器件一致性验证:资料书、批量器件、不同批次间、 小批替代 2、单板一致性验证 3、系统一致性验证 测试方案产品测试范围 bmi十六、可用性测试 -定义:指产品符合用户应用要求情况。 -目的:主要考虑产品是否符合实际应用。产品测试开发阶段 bmi十六、可用性测试 -定义:指产品符合用户应用要求情况。 -目的:主要考虑产品是否符合实际应用。产品级测试开发阶段 bmi测试工具详细设计开发协助,监督单元测试,集成测试工作的开展参与技术评审4技术评审4A技术评审5领导系统设计
22、与验SDV原型机内部标杆测试确定BETA测试用户测试设计、开发生产测试设计开发系统集成测试SIT初始产品其他功能活动:制造工艺、开发、技术支持准备,发布会、物料订购测试设计分层模型 bmi-分层模型定义:为了分层次的开展系统测试活动,提高测试的针对性,根据产品的不同阶段和测试需求,将系统测试活动分层展开: 1、用户层测试 2、应用层测试 3、功能、性能层测试-分层目的:底层测试更基础,高层测试要求更高系统质量。测试设计分层模型 bmi-用户层测试1、测试目的:从用户角度测试。2、测试方法: 1、用户经常使用或有特殊要求的功能 2、用户习惯方面的考虑 3、可维护性测试-应用层测试1、测试目的:模
23、拟实际应用时可能产生的各种应用情况。 并测试其性能。2、测试方法:1、参照产品规格书的主业务功能。 2、在不同压力条件下,进行测试。测试设计测试方法 bmi-白盒测试 又称产品结构测试,通过在不同点检查产品状态,确定实际的状态是否与预期的一致。-黑盒测试 功能测试,把测试对象看成一个黑盒子,不考虑产品内部结构,只依据需求功能规说明,检查测试对象功能是否符合它的功能说明。内部结构I/PO/PI/PI/PO/P测试设计白盒测试 bmi-白盒测试1、通过在不同点检查产品状态,确定实际的状态是否与预期的一致。2、白盒测试包括:静态检查和结构测试3、结构测试。基于对象的内部逻辑知识,设计必要的测试用例,
24、达到覆盖语句、判断、路径等。内部结构I/PO/PI/PI/PO/P测试设计白盒测试 bmi-静态测试1、代码检视/PCB监视等-静态检视方法1、可由人工进行。2、也可由工具自动进行3、代码走读4、静态测试工具测试设计覆盖率分析 bmi-白盒测试覆盖类型1、语句覆盖2、判定覆盖3、条件覆盖4、条件决策覆盖5、条件组合覆盖6、路径覆盖THANK YOUSUCCESS2022-5-15可编辑判定、条件覆盖案例 bmiIf(cond1 II cond2)编号cond1cond2结果11012000编号cond1cond2结果11012011判定100%覆盖条件100%覆盖组合条件决策覆盖案例 bmiI
25、f(cond1 & cond2) &为条件与条件决策100%覆盖红色部分覆盖不完全条件决策100%覆盖红色部分覆盖不完全编号cond1cond2结果1111200031004010If(cond3 II cond4)编号cond1cond2结果1111200031004010常见测试方法 bmi思考一下案例 测试用例(Test Case):是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。测试设计黑盒测试 bmi-黑盒测试定义1、功能测试,把测试对象看成一个黑盒子,不考虑产品内部结构,只依据需求功能规说明,检查测试对象功能是否符合它的功
26、能说明。2、每个测试用例测试一个或多个功能。-黑盒测试的设计方法1、功能分解/规格导出 2、边界值分析 3、等价类划分 4、错误推测法 5、因果分析法 6、状态迁移法 7、随机测试法黑盒测试规格导出法 bmi 规范导出的测试是根据相关规格描述来设计测试用例。每一个测试用例可以测试一个或多个规范陈述语句,一个比较实用的方法是根据陈述规范所用语句的顺序来相应地为被测单元设计测试用例。 例:考虑一个计算平方根的函数的规格:例:考虑一个计算平方根的函数的规格: 输入:实数输入:实数 输出:实数输出:实数 规格:规格:1 1、当输入一个、当输入一个0 0或大于或大于0 0的数时,返回其正平方根。的数时,
27、返回其正平方根。2 2、当输入小于、当输入小于0 0的数时,显示错误信息:平方根非法输入值小的数时,显示错误信息:平方根非法输入值小于于0“0“,并返回,并返回0.0.测试用例:测试用例:1 1、用例、用例1 1:输入:输入4 4,输出,输出2 22 2、用例、用例2 2:输入:输入-4-4,显示错误信息,显示错误信息“平方根非法输入值小于平方根非法输入值小于0”0”,并返回并返回0.0. 黑盒测试等价类划分 bmi 穷举测试的办法由于数量太大,以至于实际无法完成,我们必须从中选取一部分数据作为测试用例。问题在于如何选。 等价类划分,就是首先将输入的各种情况划分成若干等价类。 所谓等价类就是将
28、某个输入域的集合,在一个集合中每个条件都是等效的,如果其中一个的输入不能导致问题发生,集合中的其他输入条件也不可能发现问题。 例:计算算术平方根的函数例子:例:计算算术平方根的函数例子: 输入划分输入划分 输出划分输出划分 (i i) 0 = 0= 0 (iiii)=0 =0 (b b) ErrorError 用例用例1 1:输入:输入4 4,输出,输出2 2 用例用例2 2:输入:输入-4-4,显示错误信息,显示错误信息“平方根非法输入值小于平方根非法输入值小于0”0”,并返,并返回回0.0. 黑盒测试等价类划分 bmi-多输入等价类多输入等价类1 1、设计一个测试用例,使其尽可能多地覆盖所
29、有、设计一个测试用例,使其尽可能多地覆盖所有有效等价类有效等价类,重复这,重复这一步骤,使得所有一步骤,使得所有有效等价类有效等价类均被测试用例覆盖。均被测试用例覆盖。2 2、设计一个测试用例,使其只覆盖一个、设计一个测试用例,使其只覆盖一个无效等价类,无效等价类,重复这一步骤使重复这一步骤使所有所有无效等价类无效等价类均被覆盖均被覆盖 练习练习 某程序规定:输入三个正整数某程序规定:输入三个正整数a a、b b、c c作为三角形三边的作为三角形三边的边长,构成一个三角形。边长,构成一个三角形。 测试此程序(区别有效等价类和无效等测试此程序(区别有效等价类和无效等价类)价类)( (构成三角形条
30、件三角形的条件构成三角形条件三角形的条件 :任意:任意2 2边边长大于第边边长大于第3 3边长。边长。) ) 有效等价类有效等价类 :a=3 a=3 b=4 b=4 c=5 c=5 无效等价类:无效等价类: a a、b b、c c不是正整数的情况,不满足三角形条件。不是正整数的情况,不满足三角形条件。黑盒测试等价类划分 bmi a=3 a=3 b=4b=4 c=5c=5 a a、b b、c c为正整数为正整数a+bc a+bc a+cba+cbb+cab+ca a=1 a=1 b=2b=2 c=3c=3a+b=ca+b=c a=1 a=1 b=3b=3 c=2c=2a+c=ba+c=b a=3
31、 a=3 b=1b=1 c=2c=2b+c=ab+c=a a=0 a=0 b=1b=1 c=2c=2a=0a=0黑盒测试边界值分析 bmi 边界值分析使用与等价类测试方法相同的等价类划分,边界值分析使用与等价类测试方法相同的等价类划分,只是边界值分析假定错误更多地存在于两个划分的边界只是边界值分析假定错误更多地存在于两个划分的边界上,相应地为边界上及其两侧的情况设计测试用例。上,相应地为边界上及其两侧的情况设计测试用例。黑盒测试错误猜想 bmi 基于经验的错误猜想,是将所有发现的错误,基于经验的错误猜想,是将所有发现的错误,分为不同类型存于资料库中,这个资料库可以帮助错误分为不同类型存于资料库
32、中,这个资料库可以帮助错误猜想的有效性猜想的有效性黑盒测试因果图 bmi 前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系, 相互组合等. 考虑输入条件之间的相互组合,可能会产生一些新的情况.因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例. 这就需要利用因果图。因果图方法最终生成的就是判定表. 它适合于检查程序输入条件的各种组合情况利用因果图生成测试用例的基本步骤(1) 分析软件规格说明,那些是原因,那些是结果。(2) 分析软件规格说明描述中的语义.找出原因与结果之间,原因与原因之间对应的关系,画出因果图。
33、(3) 由于语法或环境限制, 有些原因与原因之间,原因与结果之间的组合情况不可能出现,为表明这些特殊情况, 在因果图上用一些记号表明约束或限制条件。(4) 把因果图转换为判定表(条件桩、动作桩、条件项、动作项)黑盒测试因果图 bmi黑盒测试实验设计 bmi实验设计的目的: 改善平均值 降低变异试验设计是一种研究与处理多因素实验的科学方法 6西格玛方法是研究作用因素(XS)与CTQ(Y)关键质量之间的关系的方法论。黑盒测试测试方法 bmi有4条选择测试策略原则:1、任何情况下都必须采用边界值分析法,因为其设计出的测 试用例发现问题的能力最强。2、必要时采用等价类划分方法补充测试用例。3、采用错误
34、推断法追加测试用例。4、如果功能说明中含有输入条件的组合情况,则一开始就采 用因果图法。常见的测试方法-硬件测试 bmi-基本功能测试 通信模块 控制模块-基本性能测试 误码测试 光口指标-信号质量及时序测试 信号标准特性 通用信号规范 通用时钟规范开发阶段-测试执行-SDV bmi-SDV过程定义 SDV是对原型机的渐增BUILD测试: SDV对一组集成产品构建模块进行评估,来确认产品的制造 或工程模型符合产品功能规格:这种分析应该是通过书面分析或者硬件和软件测试来验证与产品设计规格的符合情况 SDV测试范围包括部件、子系统和系统级测试。 例子:SDV有一项测试活动是功能测试,它确保系统工程
35、 符合产品功能规格,并与可获得的硬件相集成。 对每个build,应测试其新增及修改部分、以及这些部分对 上一个build 所做过的测试所有可能影响的地方。开发阶段-测试执行-SIT bmi-SIT过程定义 系统集成测试即初始产品渐增BUILD测试。 SIT要完成全部的开发内部测试,它是对整个系统的全面测试其目的是确认产品的设计规格、认证要求、行业标准及公司标准的符合性,同时还要确认产品生命周期早期的性能和稳定性 一般在前期多个build测试的基础上,在SIT阶段,会展开一次完整的系统测试和回归测试。 SIT和SDV阶段的区别原则。例:如果原型机与初始产品没有差别, SIT就没必要测试。开发阶段
36、-测试执行-SIT bmi-SIT主要活动序号测试活动序号测试活动1测试设计更新9电磁兼容2系统功能测试10环境测试3性能指标测试11噪声测试4软件协议一致性测试12热测试5容限容错测试13可靠性鉴定测试6可用性测试14安全测试7组网测试15包装测试8回归测试16需要的特别测试-产品测试分析 -测试对象分析 -测试过程质量分析:历史测试统计、本次测试与之比较 -测试对研发的评价:研发文档评价、测试问题与反馈 -评价依据 -历史测试情况 -历史测试记录及验证情况 -本次测试文档提交及审查情况 -本次测试要素问题统计表 -本次测试未实施的测试项目及说明。 测试报告 bmi系统验证测试SVTBETA
37、 测试技术评审6测试结果评估ESP产品发送及客户支持工作参与可获得性评审材料功能领域的持续活动产品级测试验证阶段 bmi系统认证测试和标杆测试参与可获得性决策评审-SVT活动定义-目的是验证制造流程,通过批量build来保证设计完整性。则一测试必须在界定好的客户发货级硬件上面实施。-SVT是面向制造的测试,以保证大批量生产的可制造性。- SVT不应有新的设计或需求的验证,只针对技术评审5的结论-SVT主要活动序号要素1EMC验证产品批量制造过程的一直稳定性,随即抽样,测试EMC符合程度2环境测试批量生产产品的例行环境测试,随机抽样进行3安全测试批量生产产品的例行环境测试,随机抽样进行4回归测试
38、5一致性验证6需要的特别测试开发阶段-测试执行-SVT bmi-型式试验型式试验(试产验证测试) bmi型式试验是指:在设计完成后,对试制出来的新产品进行的定型试验,其试验项目比例行试验项目多,而且更加严格和苛刻,用户对刚出厂的新产品也可以要求制造厂进行出厂试验时增加一些型式试验项目(一般这些项目是事先甲乙双方协商后写进技术协议中的)。型式试验也是对产品能否满足技术规范的全部要求所进行的实验。它既是新产品鉴定中必不可少的一个环节。也是定型后产品在有改进时或经过一定时效后需要进行的一种全面性能试验。当双方有约定时或存在争议时,通常都会要求进行型式试验。开发阶段-测试执行-SVT bmi-目的 批
39、量产品质量情况-引用标准和文献 企业内控标准、环境应力试验规范-试验样品 型号规格 抽样方案:样本基数、抽取样本数 样品分组 样品状态:QC产品设计更改-检验结果总结-详细试验情况 常温检测 气候环境应力试验 机械环境应力试验一致性检验与制程能力CPK bmi规格范围管制上限管制上限管制下限管制下限中心线中心线 用户级测试-Alpha测试 bmi在开发完成时进行在开发完成时进行测试后仍有少量问题测试后仍有少量问题由用户或由用户或其他人员(微软为例)其他人员(微软为例)在开发人员的指导下,是在受控环境中进行在开发人员的指导下,是在受控环境中进行用户级测试-Beta测试 bmi在开发测试根本完成时
40、进行在开发测试根本完成时进行最终由用户独立进行最终由用户独立进行模块级测试-UT/MIT/MST bmi 测试策略和计划系统测试计划系统测试执行系统测试设计系统测试环境准备集成测试计划集成测试执行集成测试设计集成测试环境准备模块测试计划模块测试执行模块测试设计模块测试环境准备需求规格模块设计概要单元测试系统测试集成测试单元设计实现单元测试 bmi-单元测试单元测试最小的被测组成部分,如软件函数、驱动电路、信号放大电路等最小的被测组成部分,如软件函数、驱动电路、信号放大电路等采用:白盒为主采用:白盒为主+ +黑盒黑盒 的测试方法。的测试方法。-步骤步骤单元测试计划,由单元测试计划,由PMPM项目
41、安排并协调:项目安排并协调: 标示单元测试的风险标示单元测试的风险 估计单元测试的工作量估计单元测试的工作量 明确单元测试的软硬件及人力明确单元测试的软硬件及人力需求需求 制定单元测试的日程表制定单元测试的日程表 指定工程师准备单元测试用例指定工程师准备单元测试用例 以上写入单元测试计划以上写入单元测试计划单元测试方法单元测试方法: :规格导出、边界值分析、等价类划分、错误猜测法规格导出、边界值分析、等价类划分、错误猜测法注意事项:清楚模块和模块之间的关系。注意事项:清楚模块和模块之间的关系。成败关键:意识、工具、标准确定、第三方介入成败关键:意识、工具、标准确定、第三方介入集成测试 bmi-
42、在单元测试基础上,按一定组装策略进行组装,关注接口,找准组装在单元测试基础上,按一定组装策略进行组装,关注接口,找准组装关系。关系。采用白盒采用白盒+ +黑盒的测试方法。黑盒的测试方法。测试自动化 bmi 首先,一个企业实施测试自动化,绝对不是拍脑袋说干就首先,一个企业实施测试自动化,绝对不是拍脑袋说干就能干好的,它不仅涉及测试工作本身流程上、组织结构上的调整与能干好的,它不仅涉及测试工作本身流程上、组织结构上的调整与改进,甚至也包括需求、设计、开发、维护及配置管理等其他方面改进,甚至也包括需求、设计、开发、维护及配置管理等其他方面的配合。如果对这些必要的因素没有考虑周全的话,必然在实施过的配
43、合。如果对这些必要的因素没有考虑周全的话,必然在实施过程中处处碰壁,既定的实施方案也无法开展。程中处处碰壁,既定的实施方案也无法开展。 其次,尽管自动化测试可以降低人工测试的工作量,但并其次,尽管自动化测试可以降低人工测试的工作量,但并不能完全取代手工测试。不能完全取代手工测试。100100的自动化测试只是一个理想目标,根的自动化测试只是一个理想目标,根据笔者的经验,即便一些如据笔者的经验,即便一些如SAPSAP、OracleERPOracleERP等测试库规划十分完善等测试库规划十分完善的套件,其测试自动化率也不会超过的套件,其测试自动化率也不会超过7070。所以一味追求测试自动。所以一味追
44、求测试自动化只会给企业带来运作成本的急剧上升。化只会给企业带来运作成本的急剧上升。 再次,实施测试自动化需要企业有相对规模的投入,对企再次,实施测试自动化需要企业有相对规模的投入,对企业运作来说,投入回报率将是决定是否实施软件测试自动化的最终业运作来说,投入回报率将是决定是否实施软件测试自动化的最终指挥棒,笔者建议企业在决定实施软件测试自动化之前,必须要做指挥棒,笔者建议企业在决定实施软件测试自动化之前,必须要做量化的投资回报分析。此外,实施软件测试自动化并不意味着必须量化的投资回报分析。此外,实施软件测试自动化并不意味着必须采购强大的自动化采购强大的自动化软件测试工具软件测试工具或自动化管理
45、平台,毕竟或自动化管理平台,毕竟软件质量软件质量的保证不是依靠产品或技术,更多的因素在于高素质的人员和合理的保证不是依靠产品或技术,更多的因素在于高素质的人员和合理有效的流程。有效的流程。 bmiModule III产品测试管理 1 1、产品研发管理体系、产品研发管理体系 2 2、产品测试管理体系、产品测试管理体系 3 3、产品测试组织结构、产品测试组织结构产品测试管理 bmi产品测试管理 bmi产品测试管理 bmi研发管理整体解决方案 bmiPLM:PLM:研发管理整体解决方案 bmi 产品生命周期管理(PLM)是针对制造业的扩展型企业解决方案,以便于在公司的各个部门、用户、供应商之间共享产
46、品数据。PLM解决方案把你的产品-即你的利润来源放在一切活动的核心位置。PLM可以从企业资源计划系统ERP(Enterprise Resource Planning)、供应链管理SCM(Supply Chain Management)、客户关系管理CRM(Customer Relationship Management)系统中提取相关的信息,并使之与你的产品知识发生关联,进而使所有人都能够更快速、高效地工作。这样就允许在公司间的整个网络上共同工作来进行概念设计、产品设计、产品生产、产品维护,对整个网络的操作就象对一个单独的机构操作一样。PLM允许扩展型企业在公司间共享产品的业务流程和产品知识,
47、包括从提出概念到产品退出市场整个生命周期的各个阶段。 产品研发管理-IPD bmi产品研发管理-TS16949-APQP bmi产品研发管理-CMMI bmi CMMI 的全称为:Capability Maturity Model Integration,即能力成熟度模型集成。 CMM是由美国卡内基梅隆大学的软件工程研究所(SEI)创立的CMM (Capability Maturity Model 软件能力成熟度模型)认证评估,在过去的十几年中,对全球的软件产业产生了非常深远的影响。通常有以下5几个级别: 1 1初始级:是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决初始级:是无序的,
48、有时甚至是混乱的,对过程几乎没有定义,成功取决于个人努力,管理是反应式的。于个人努力,管理是反应式的。 2 2已管理级:建立了基本的项目管理过程来跟踪费用、进度和功能特性。制已管理级:建立了基本的项目管理过程来跟踪费用、进度和功能特性。制定了必要的过程纪律,能重复早先类似应用项目取得的成功经验。定了必要的过程纪律,能重复早先类似应用项目取得的成功经验。 3 3已定义级:已将软件管理和工程两方面的过程文档化、标准化,并综合成已定义级:已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程。所有项目均使用经批准、剪裁的标准软件过程来开发该组织的标准软件过程。所有项目均使用经批准
49、、剪裁的标准软件过程来开发和维护软件,软件产品的生产在整个软件过程是可见的。和维护软件,软件产品的生产在整个软件过程是可见的。 4 4量化管理级:分析对软件过程和产品质量的详细度量数据,对软件过程和量化管理级:分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解与控制。管理有一个作出结论的客观依据,管理能够在定产品都有定量的理解与控制。管理有一个作出结论的客观依据,管理能够在定量的范围内预测性能。量的范围内预测性能。 5 5 优化管理级:过程的量化反馈和先进的新思想、新技术促使过程持续不断优化管理级:过程的量化反馈和先进的新思想、新技术促使过程持续不断改进。改进。 产品测试管
50、理体系-框架 bmi产品开发与测试是姐妹关系,紧密地结合在一起可测性需求分析测试策略与计划开发测试系统集成测试产品测试项目管理-独特性 bmi1 1、案例:、案例: - -周期为周期为4 4个月的项目,测试阶段为个月的项目,测试阶段为1 1个月,但因开发延迟了个月,但因开发延迟了2 2周,留周,留 给测试的时间只有给测试的时间只有2 2周,怎么办?周,怎么办?2 2、测试任务的依赖关系、测试任务的依赖关系 - -开发与测试开发与测试 - -测试资源测试资源3 3、测试周期的不确定性分析、测试周期的不确定性分析 - -设计更改与优化设计更改与优化 - -漏测问题漏测问题产品测试项目管理-测试计划