




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、产品测试管理高级实务产品测试管理高级实务2课程目录课程目录3、技术开发技术开发测试管理测试管理2、产品开发、产品开发测试管理测试管理7.构建企业级构建企业级的产品测试的产品测试体系体系1、产品测试、产品测试概述概述0、公司及培、公司及培训课程介绍训课程介绍6、基于敏捷基于敏捷开发模式的开发模式的产品测试管产品测试管理理5、产品测试、产品测试技术与自动技术与自动化化 4、产品测产品测试组织与团试组织与团队队3达明咨询简介达明咨询简介 达明咨询公司是一家专注于公司核心价值链业务运营管理的咨询公司,业务领域包括营销管理(Marketing & Sales Management)研发管理(R&
2、amp;D Management)供应链管理(Supply Chain Management)人力资源管理(Human Resource Management) 公司的讲师均在华为、中兴、IBM、HP等国内外知名公司从基层员工做到中高层管理者,具有很强的业务管理能力和实战经验,尤其对中国的本土企业如何突破成长瓶颈,建立研发、营销、供应链管理体系具有很强的实践能力。 4达明咨询的课程特点达明咨询的课程特点讲师均有在中国一流企业的工作经历讲师均具备一线作战经验,从基层做到高层课程的案例设计紧贴现实,具有很强的实操性课程除了强调理念和方法论外,更强调模板、操作指导书讲课资料和学员全部分享,拿回去就可
3、以用5从市场的源头决定公司做正确的事市场驱动研发而不是技术驱动研发市场营销产品研发供应链管理客户满意通过研发流程和项目管理体系完成对产品的交付技术开发和产品开发适度分离通过采购、生产、制造完成业务的交付提高流程运作效率,降低运营成本最终完成业务交付,提高客户满意度和忠诚度我们对企业运营的理解我们对企业运营的理解人力资源管理找到合适的人,并把合适的人放到合适的岗位上,人力资源价值最大化通过人才选、育、用、留等机制保证人力资本的不断增值6案例:M公司嵌入式产品研发测试方面存在的典型问题研讨要求:列出M公司研发测试方面存在哪些问题(8-10项)时间安排:研讨15分钟,汇报交流10分钟研讨案例研讨案例
4、1 1:M M公司产品研发测试方面存在的问题公司产品研发测试方面存在的问题7课程目录课程目录3、技术开发技术开发测试管理测试管理2、产品开发、产品开发测试管理测试管理7.构建企业级构建企业级的产品测试的产品测试体系体系1、产品测试、产品测试概述概述0、公司及培、公司及培训课程介绍训课程介绍6、基于敏捷基于敏捷开发模式的开发模式的产品测试管产品测试管理理5、产品测试、产品测试技术与自动技术与自动化化 4、产品测产品测试组织与团试组织与团队队8质量管理发展四个阶段质量管理发展四个阶段1900手工操作者专职检验员1920过程统计技术1931全面质量管理1960阶段时间9质量管理的原则质量管理的原则缺
5、陷纠正成本越早发现问题总体成本越低10华为公司测试流程的演变华为公司测试流程的演变11产品测试的主要工作产品测试的主要工作路标规划市场需求概念阶段开发阶段中试阶段批量生产计划 阶段计划设计样机测试策略与测试计划测试标准测试方案EMC方案安规方案防雷方案单板测试单板硬件测试EMC 设计安规设计防雷设计单板软件测试可靠性设计可靠性方案性能测试EMC 认证安规测试认证防雷测试环境试验测试功能测试白盒测试极限测试MTBF 预计中试测试回归测试l 测试模板平台:l测试/设计策略l测试/设计 方案l测试/设计 标准、规范l测试报告可靠性测试EMC测试安规测试自测测试模板平台:12技术开发流程与产品开发流程
6、的关系技术开发流程与产品开发流程的关系技术开发输出技术平台与货架技术,产品开发流程在其基础上进行集成开发。技术开发输出技术平台与货架技术,产品开发流程在其基础上进行集成开发。概念计划开发GBM(Global Brand ManagerPDTIPMT发布验证生命周期概念决策评审点计划决策评审点可获得性决策评审点寿命终止决策评审点归档 到中研 文档管 理中心技 术 平 台 货架 技 术知识产权/智力资产分析和评估技术可选方案技术共享分析RDPDT-30SE-65产品规划技术规划技术需求归档 到中 研文档 管理中心 Charter立项开发&验证内部客户化技术开发流程13产品软件硬件模块1模块
7、1模块1。单板1单板1单板1。软件项目硬件项目产品系统的分层结构产品软件硬件模块1模块1模块1。单板1单板1单板1。软件项目硬件项目产品系统的分层结构模块单板模块单板级测试级测试子系统级子系统级测试测试系统级测系统级测试试并行开发模型并行开发模型14产品测试是分级分层的:产品测试流程:关注整个产品的测试, 比较HighLevel;软件/硬件项目测试流程:关注软件/硬件的具体测试,比较Detail;两者有机集成,构成产品测试流程。产品测试软件/硬件项目测试(产品)项目测试管理HighLevelDetailedWBS1/2(软件/硬件)项目测试管理WBS3模块级产品级产品测试和研发项目管理的分层结
8、构测试分层管理测试分层管理15产品测试四大活动产品测试四大活动测试活动测试活动主要对产品各个模块的单元接口进行联调对产品的功能及性能进行全面测试主要对产品的单个模块进行测试由客户方组织对产品进行验收16产品测试为什么失败?产品测试为什么失败? 缺乏合适的测试人员 招聘困难 人员流动性较大 测试人员效率低下 待遇较低,难与开发 抗衡 缺乏测试流程的保障 没有规范的测试流程 测试流程执行困难 测试流程没有得到其它部门 的认可 测试流程的执行没有得到高 层的支持 缺乏测试组织的支撑 测试组织附属于开发小组,没有独立 重开发,轻测试 测试在公司组织结构中的地位较低 测试人员得不到周边部门的支撑 没有建
9、立测试人员的职业通道人组织流程技术 缺乏测试技术的规划 没有建立测试经验库 对测试技术缺乏长期规划 测试的技术或工具不能重用 不能投入测试资源进行技术 研究17测试方法对应关系测试方法对应关系静态测试动态测试单元测试验收测试系统测试集成测试白盒测试灰盒测试黑盒测试18思考:在研发体系思考:在研发体系, ,通过哪些手段或者方法提高产品质量通过哪些手段或者方法提高产品质量? ?19课程目录课程目录3、技术开发技术开发测试管理测试管理2、产品开发、产品开发测试管理测试管理7.构建企业级构建企业级的产品测试的产品测试体系体系1、产品测试、产品测试概述概述0、公司及培、公司及培训课程介绍训课程介绍6、基
10、于敏捷基于敏捷开发模式的开发模式的产品测试管产品测试管理理5、产品测试、产品测试技术与自动技术与自动化化 4、产品测产品测试组织与团试组织与团队队20产品测试流程的成熟度产品测试流程的成熟度TMMTMM初级阶段初级阶段级别级别1 1定义阶段定义阶段级别级别2 2集成集成级别级别3 3级别级别4 4级别级别5 5测试是一个混乱无序的过程。测试是与调试分离的, 测试被定义为编码完成后的阶段. 测试不再是编码完成后的一个阶段, 相反, 它集成了整个软件生存周期. 测试是一个可测量与可量化过程. 开发过程所有阶段的评审现在都被看做是测试与质量管理活动由于已具有在测试成熟度模型第一级到第四级所达到的成熟
11、度目标提供的基础结构, 现在可以说对测试过程进行了定义和管理并对其成本和有效性进行了监控. 在第5级, 机制好转并且不断改进测试. 管理与测量管理与测量最佳化最佳化,预预防与改进防与改进.21传统测试流程出现的问题传统测试流程出现的问题开发进度(已实现比例)项目进度100开始集成设计缺陷导致返工计划发布日期实际发布日期项目进度难以控制项目风险控制能力弱40精力发费在集成和测试上22渐增测试模型渐增测试模型模块设计编码 模块测试 每日构建系统联调与集成 原型机测试M1M2MIT SDVM3M5MIT SDVMIT SDVM8MIT SDVTRTRTRTRBuild1Build2Build3Bui
12、ld4模块级(MUTMITMST)系统级23产品级测试产品级测试渐增测试模型举例渐增测试模型举例24产品启动定义可测试性需求定义产品包需求和产品概念拟制产品包验证主计划系统需求分析、功能分析、设计综合BUILD划分模块级需求分析、设计、实现、验证产品测试正式启动子系统需求分析、功能分析、设计综合SDV测试执行测试评估与关闭SIT测试执行SVT测试执行测试方案设计测试用例设计测试需求分析和测试计划制定验证阶段验证阶段开发阶段开发阶段计划阶段计划阶段概念阶段概念阶段产品测试生命周期模型产品测试生命周期模型25什么是什么是BB?BB?Building Block是一个结构(如机械件、面板)中的一个组
13、件(比如一个单板)或者一组组件,当是一个结构(如机械件、面板)中的一个组件(比如一个单板)或者一组组件,当它与其他构建模块组装在一起后便成为一个完整的子系统或系统。它与其他构建模块组装在一起后便成为一个完整的子系统或系统。从架构方面来讲,一个构建模块具有以下特征:从架构方面来讲,一个构建模块具有以下特征: 某一结构中的某一结构中的BB与其他与其他BB共同装配在一起,最终形成一个完整的、适于销售共同装配在一起,最终形成一个完整的、适于销售的产品的产品 可以单独采购或者自行开发设计,可以在产品之间共享和重用可以单独采购或者自行开发设计,可以在产品之间共享和重用 通过一系列功能和通过一系列功能和/或
14、非技术的物理属性(如或非技术的物理属性(如PCB属性有长度、宽度、高度、属性有长度、宽度、高度、重量、颜色)等描述每个硬件和软件重量、颜色)等描述每个硬件和软件BB BB通常作为单独的实体进行测试通常作为单独的实体进行测试(BBFV)26BuildBuild的划分的划分Build划分是划分是Build计划的关键环节;计划的关键环节;Build划分是定义渐增构建顺序基础划分是定义渐增构建顺序基础 ;Build划分时,首先要借助产品需求跟踪关系建立系统功能和各基划分时,首先要借助产品需求跟踪关系建立系统功能和各基础础BB之间的对应关系;之间的对应关系;为了便于为了便于Build划分,系统功能需要保
15、持合适的粒度,对部分耦合划分,系统功能需要保持合适的粒度,对部分耦合性特别强的功能或偏细节的功能首先进行适当的合并。性特别强的功能或偏细节的功能首先进行适当的合并。27 . . . . . . . . . . . .产品平台核 心 技 术关键技术积累具体特性的产品个性化测试用例集共性化测试用例集共性化测试用例集公司测试用例库公司测试用例库28n原型样机测试是对原型机的测试;n原型样机测试对一组集成产品功能模块进行评估,来确认集成产品模型符合产品功能规格;这种评估应当通过书面分析或者硬件和软件测试来验证与产品设计规格的符合情况;n原型样机测试范围包括部件、子系统和系统级测试。举例来说,原型样机测
16、试有一项测试活动是功能测试,它确保系统工程软件符合产品功能规格,并与可获得的硬件相集成;n对每个模块,应测试其新增及修改部分、以及这些部分对上一个模块所做过的测试所有可能有影响的地方;同时针对一些EMC等性能方面的测试,在条件允许的情况下尽可能早地开展;原型样机测试过程定义原型样机测试过程定义29n工程样机测试即对工程样机进行测试,关注产品功能与性能要求的满足并评估试产的可能性。n工程样机测试要完成全部的开发内部测试,它是对初始产品渐增模块和对整个系统的全面测试;其目的是确认与设计规格、认证要求、行业标准及公司标准的符合性,同时还要确认产品生命周期早期的性能和系统稳定性。n一般在前面多个模块测
17、试的基础上,开展一次完整的系统测试与回归测试。n工程样机测试与原型样机测试的区分原则:应遵循“相同的被测对象不要做两遍相同的测试”的基本原则,如果原型机与初始产品没有差别,工程样机测试就没有必要重复做一次同样的渐增测试。工程样机测试过程定义工程样机测试过程定义30n小批量样机测试的目的是验证制造流程,并通过批量builds来保证设计完整性。这一测试必须在界定好的客户发货级典型硬件上面实施。n小批量样机测试是面向制造的测试,以保证大批量生产时的可制造性,一些回归测试也是必须的。n小批量样机测试不应该有新的设计或需求方面的验证,而应针对技术评审7的结论,对产品进行的有针对性的专题测试(Unique
18、 Test Required)。小批量样机测试活动定义小批量样机测试活动定义31BETABETA测试流程测试流程32项目计划需求分析概要设计详细设计系统测试计划集成测试计划单元测试计划(项目任务书,项目输入)单元测试系统测试编 码发 布SO W产品集成工作支持集成测试PDCP计计划划阶阶段段开开发发阶阶段段软件项目测试过程软件项目测试过程33单板硬件测试过程单板硬件测试过程单板需求分析主芯片选择单板硬件设计SCHPCB设计制板器件选型单板硬件需求分析元器件测试电路调试信号测试单元电路测试单元电路测试程序设计电路集成测试程序设计集成电路测试单板软件概要设计单板软件需求分析单板软件详细设计集成测试
19、设计单元测试设计单板软件测试设计编码单元测试集成测试软件系统测试单板软硬集成测试软硬接口定义测试相关工作3334测试端到端流程测试端到端流程输入任务输出测测试试计计划划测试计划需求跟踪矩阵资源需求测试用例测试进度测测试试准准备备( (测测试试设设计计、实实现现) )测测试试执执行行测试报告测试记录缺陷报告测试报告开发文档,如:SRS,HLD,LLD等项目计划代码测试策略制定测试策略35目录目录软件测试工程过程软件测试工程过程测试需求测试需求测试策略测试策略测试计划测试计划测试用例设计测试用例设计测试环境准备测试环境准备测试执行测试执行测试报告测试报告测试度量测试度量测试总结测试总结36测试需求
20、测试需求为什么要测试需求?1:需求描述是否具备完整性;(没有遗漏内容;或描述片面)2:需求描述是否有二义性;(没有让不同的人有不同的理解结论)3:需求描述是否是正确的;(需求之间没有冲突等)4:是否包含有非功能属性的需求;(性能,安全性,可靠性,易用性等)5:是否需求是可以验证的;(需求描述具备可测试性)6:需求是否可实现; 举例: 什么是可测试性需求?37需求工程贯穿产品开发全过程需求工程贯穿产品开发全过程市场需求产品包需求内部需求设计需求系统规格软件需求客户要求功能需求非功能需求标准约束硬件需求架构设计质量属性DFX书面标准事实标准38目录目录软件测试工程过程软件测试工程过程测试需求测试需
21、求测试策略测试策略测试计划测试计划测试用例设计测试用例设计测试环境准备测试环境准备测试执行测试执行测试报告测试报告测试度量测试度量测试总结测试总结39思考思考只要开发人员把代码交给测试工程师,测试工作就启动了?还是有什么条件?只要开发人员把代码交给测试工程师,测试工作就启动了?还是有什么条件?所有的特性都同等程度地测试吗?所有的特性都同等程度地测试吗?哪里将是测试的重点?哪里将是测试的重点?将使用什么样的测试技术?将使用什么样的测试技术?动态还是静态?哪些用白盒、哪些用黑盒?动态还是静态?哪些用白盒、哪些用黑盒?如何执行测试?手工还是自动化?如何执行测试?手工还是自动化?哪些部分进行自动化测试
22、?哪些部分进行手工测试?哪些部分进行自动化测试?哪些部分进行手工测试?什么时候测试可以结束了?什么时候测试可以结束了?40目录目录软件测试工程过程软件测试工程过程测试需求测试需求测试策略测试策略测试计划测试计划测试用例设计测试用例设计测试环境准备测试环境准备测试执行测试执行测试报告测试报告测试度量测试度量测试总结测试总结41测试计划测试计划项目计划测试策略测试范围测试重点测试入口条件测试出口条件测试方法测试工具测试环境资源需求进度安排风险测试交付件举例:一个好的计划和一个差的计划比较42目录目录软件测试工程过程软件测试工程过程测试需求测试需求测试策略测试策略测试计划测试计划测试用例设计测试用例
23、设计测试环境准备测试环境准备测试执行测试执行测试报告测试报告测试度量测试度量测试总结测试总结43测试用例设计方法测试用例设计方法黑盒方法黑盒方法仅仅关注于输入和输出忽略内部路径、结构和实现不知道被测试代码的百分比44测试用例的设计方法测试用例的设计方法等价类划分法等价类划分法边界值分析法边界值分析法场景法场景法错误推断法错误推断法因果图法因果图法正交设计法正交设计法45白盒方法白盒方法 不仅关注输入和输出,还关注于被测对象的内部结构应用程序条件1、2YNNY条件3、446测试方法白盒测试方法白盒 语句覆盖:每条语句至少执行一次 分支覆盖:每个分支至少执行一次 条件覆盖:每个条件真假至少执行一次
24、 条件组合覆盖:分支中的所有条件真假取值各种组合至少执行一次 路径覆盖:每个条路径至少执行一次 .条件1、2YNNY条件3、447测试用例和资产建设测试用例和资产建设创建测试用例库创建测试用例库按产品划分的测试用例库按产品划分的测试用例库测试领域划分的测试库,如安全性测试、界面测试测试领域划分的测试库,如安全性测试、界面测试创建测试过程资产库创建测试过程资产库样例库样例库度量数据库度量数据库经验教训库经验教训库风险库风险库培训资料库培训资料库.48目录目录软件测试工程过程软件测试工程过程测试需求测试需求测试策略测试策略测试计划测试计划测试用例设计测试用例设计测试环境准备测试环境准备测试执行测试
25、执行测试报告测试报告测试度量测试度量测试总结测试总结49测试环境测试环境确定测试环境的组成确定测试环境的组成管理测试环境管理测试环境尽量避免开发人员占用测试环境尽量避免开发人员占用测试环境,导致数据失真导致数据失真 50目录目录软件测试工程过程软件测试工程过程测试需求测试需求测试策略测试策略测试计划测试计划测试用例设计测试用例设计测试环境准备测试环境准备测试执行测试执行测试报告测试报告测试度量测试度量测试总结测试总结51测试执行过程测试执行过程测试用例结果Debugging用例问题程序问题修复回归测试新测试用例用例执行52目录目录软件测试工程过程软件测试工程过程测试需求测试需求测试策略测试策略
26、测试计划测试计划测试用例设计测试用例设计测试环境准备测试环境准备测试执行测试执行测试报告测试报告测试度量测试度量测试总结测试总结53测试报告测试报告对测试活动和软件质量进行总结和评价对测试活动和软件质量进行总结和评价靠数据说话靠数据说话保证有准确、详实的测试数据,数据的收集和保证有准确、详实的测试数据,数据的收集和统计计算尽可能自动化统计计算尽可能自动化根据测试用例密度、用例有效性等数据分析测试有效性根据测试用例密度、用例有效性等数据分析测试有效性根据缺陷密度及缺陷在各函数的分布情况评估代码质量根据缺陷密度及缺陷在各函数的分布情况评估代码质量站在测试的角度看开发站在测试的角度看开发哪类缺陷比较
27、多,如果在早期开发哪类缺陷比较多,如果在早期开发过程中避免缺陷的引入(缺陷预防)过程中避免缺陷的引入(缺陷预防)54目录目录软件测试工程过程软件测试工程过程测试需求测试需求测试策略测试策略测试计划测试计划测试用例设计测试用例设计测试环境准备测试环境准备测试执行测试执行测试报告测试报告测试度量测试度量测试总结测试总结55为何要进行测试度量?为何要进行测试度量?管理者希望通过度量指标:管理者希望通过度量指标:一眼就能看到项目的情况一眼就能看到项目的情况项目失控的情形项目失控的情形需要重点关注的领域需要重点关注的领域了解产品质量和生产率了解产品质量和生产率If you dont know where
28、 you are, a map wont help.-Watts S. HumphreyWhat you cannot measure, you cannot manage.-Druck测试人员希望通过度量指标: 对自己开发的产品的各方面属性有更深入的理解 更好地评估产品质量清楚工作进展56控制图示例控制图示例0 00 0. .1 10 0. .2 20 0. .3 30 0. .4 4U UC CL L . .3 30 0M Me ea an n . .1 12 2L LC CL L . .0 01 1若产品故障率超出控制范围,需分析:1、产品质量太差?2、指标统计标准偏高?若产品故障未超出
29、控制范围,需分析:1、产品质量好?2、指标统计标准偏低?PDT产品故障率数据57产品产品DIDI值度量值度量DI值计算方法:DI=(致命问题数(致命问题数*10+严重问题数严重问题数*3+一般问题数一般问题数*1)*SN产品TR评审标准.DOC DI:Defect Indicater,产品缺陷指标 SN:系统难度系数Sample58缺陷度量项缺陷度量项缺陷剔除率缺陷剔除率缺陷剔除率缺陷剔除率DRE(Defect Removal Effeciency)DRE=A/(A+B)A:当前已发现的缺陷;:当前已发现的缺陷;B:当前工作产品遗留缺陷:当前工作产品遗留缺陷DRE用来衡量质量控制过程的有效性,
30、例:用来衡量质量控制过程的有效性,例:59目录目录软件测试工程过程软件测试工程过程测试需求测试需求测试策略测试策略测试计划测试计划测试用例设计测试用例设计测试环境准备测试环境准备测试执行测试执行测试报告测试报告测试度量测试度量测试总结测试总结60测试总结测试总结可以避免问题的重复发生可以避免问题的重复发生形成案例库,供新员工学习形成案例库,供新员工学习产品优化及质量提升的重要参考产品优化及质量提升的重要参考公司经验和教训的积累公司经验和教训的积累产品质量问题的追溯产品质量问题的追溯是衡量产品质量的依据是衡量产品质量的依据61课程目录课程目录3、技术开发技术开发测试管理测试管理2、产品开发、产品
31、开发测试管理测试管理7.构建企业级构建企业级的产品测试的产品测试体系体系1、产品测试、产品测试概述概述0、公司及培、公司及培训课程介绍训课程介绍6、基于敏捷基于敏捷开发模式的开发模式的产品测试管产品测试管理理5、产品测试、产品测试技术与自动技术与自动化化 4、产品测产品测试组织与团试组织与团队队6262战略管理使能流程功能领域支撑流程IPDIPD(集成产品开发)体系概览(集成产品开发)体系概览产品实现流程产品路标需求管理(OR)需求中期需求产品包需求紧急需求技术商业战略历史数据计划开发验证发布生命周期管理概念产品开发流程(含解决方案、平台开发、服务)做正确的事正确地做事Charter流程资源管
32、理技术服务供应/制造/新产品导入(NPI)研发营销采购(Sourcing)跨部门团队度量分析和改进客户要求客户满意需求产品和服务 技术体系流程业务分层技术开发CBB技术预研IPD持续改进PCR(计划变更请求)财经架构产品数据管理产品版本管理产品成本管理 产品配置管理管道管理项目管理知识管理度量指标度量分析团队架构职责运作规则考核机制变革进展度评估(TPM)改进流程战略规划(SP)年度业务计划(BP)执行与监控业绩评估以客户为中心的设计(UCD)产品基本信息管理(PBI)合作管理License管理资源池建设决策管理机制投资组合管理决策评审技术评审备注:63IPDIPD的核心思想的核心思想 产品开
33、发是产品开发是投资投资行为行为 基于基于市场市场的创新的创新 基于基于平台平台的异步开发模式和重用策略的异步开发模式和重用策略 技术技术开发与产品开发分离开发与产品开发分离 跨部门跨部门协同协同 结构化的结构化的并行并行开发流程开发流程 产品线与产品线与能力能力线并重线并重 职业化职业化人才人才梯队建设梯队建设64产品平台与产品平台与CBBCBB等的关系等的关系产品、产品平台管理组件、公共组件管理器件、库存管理技术管理普通组件、在单一产品上使用单产品平台公共组件、在单产品平台的多产品上使用跨产品平台公共组件、在多平台、多产品上使用65异步开发(异步开发(Asynchronous Develop
34、mentAsynchronous Development)框架)框架TMGTPPTDTTPDTDTCBB/BBTMGTPPTDTTPDTDTCBB/BBCEGTPPOutsourcing TeamSQ&PPOSTCBB/BBTMTTPPTDTTPDTDTplatformPMTMMPDTIPDPDTproductSMTMMSPDTIPDSPDTSolution子系统/技术平台产品解决方案平台参平台参考架构考架构系统系统参考参考模型模型CBB技术技术管理管理体系体系技术技术路标路标版版本本火火车车核心核心能力能力中心中心CBBCBB业业务务分分层层依赖依赖关关系管系管理理技技术术战战略略业
35、业务务战战略略66平台和技术的迁移平台和技术的迁移迁移结束点,也是生命周期结束点迁移到PDT1迁移到PDT n结束点有效期迁移阶段前期迁移阶段后期TR4TR6PDT 1 R0 xxxCDCPTR5TR4APDCPADCPGACharterPDT n R0 xxxCDCPTR5TR6TR4PDCPADCPGACharterTR4A技术/平台R0 xxxCDCPPDCPTDCPCharter67技术开发项目特点技术开发项目特点创新性高影响因素多,不确定性高周期长风险大成功率低,成功后回报高68预研、产品及技术开发的关系预研、产品及技术开发的关系69项目预研流程项目预研流程70项目预研的测试活动项目
36、预研的测试活动71敏捷项目过程敏捷项目过程迭代开发迭代开发 迭代设迭代设计和计计和计划划Story设计设计CodingCheckIn迭代迭代集成测试集成测试Story TestDT输出测试代码和功能代码开发人员进行测试,保证功能正确,保证可以合入版本提交给测试验收Story的集成测试和Story的功能验收组件迭代开发模式组件迭代开发模式72组件测试自动化组件测试自动化子子TDTTDTTR1TR2TR4TR4ABUILD点特性测试设计自动化分析、设计TR5解决方案测试设计TR3组件集成测试组件测试设计、脚本实现、执行特性测试执行自动化实现自动化回归用例、脚本维护测试执行/自动化执行持续集成、自动
37、化回归/用例、脚本维护测试需求分析测试需求分析组件测试特性测试解决方案测试BBIT预测试脚本实现TDCPTR1TR2PDCPTDCP持续集成系统集成及验证测试验收STDTSTDTl 组件测试和特性测试各TDT测试团队独自测试,无法独立测试部分(如性能/可靠性)可遗留到V8集成版本中测试,需在测试策略中明确; l 特性测试包含专项测试,具体包含性能、可靠性、可维护性、关键技术、资料测试等;l 平台版本作为整体交付给产品,解决方案测试需在集成版本上统一执行并通过(统一设计/执行)。Sample73测试自动化是持续集成的基础;测试自动化是持续集成的基础;要求:要求:1、单元测试:100%自动化,代码
38、覆盖率达75%2、组件测试:100%自动化,代码覆盖率达75%3、系统测试:80%自动化,代码覆盖率达70%措施:措施:1、UT/CT:工具支撑,并集成到持续集成环境中; 2、系统测试:自动化建模技术BAW(基于业务的封装),测试用例与脚本归一,提升脚本开发效率,降低维护工作量;工具集成到持续集成环境中;3、成立自动化测试中心,集中自动化资源,专业化运作,提升测试效率。测试自动化测试自动化Sample74某公司自主开发的组件项目测试工具列表某公司自主开发的组件项目测试工具列表Sample75技术开发流程示例技术开发流程示例76概念阶段计划阶段EVT阶段DVT阶段小批量试产阶段转产阶段硬件方案评
39、审产品软件框架设计协助制定EVT阶段调测方案编码需求评审计划评审EVT评审立项决策评审DVT评审小批量生产评审结项评审EVT调测工具开发(软件)项目立项方案评审软件编码软件调试转DVT立项评审方案评审设计评审测试报告评审End硬件联调调试报告EVT评审某公司产品技术开发子流程某公司产品技术开发子流程调试联调生产测试软件需求提出Sample77概念阶段计划阶段EVT阶段DVT阶段小批量试产阶段转产阶段增加产品测试需求风险评估需求评审计划评审EVT评审立项决策评审DVT评审小批量生产评审结项评审测试需求接收DVT(文件,软件接口)测试方法确认设计PVT试用方案评审End编码与调试调试报告试用报告某
40、公司组件测试工具开发子流程某公司组件测试工具开发子流程制定产品测试方案开发生产测试软件调试测试软件试用、受控测试软件大规模使用设计评审Sample78测试驱动开发(测试驱动开发(TDDTDD) 泥瓦工匠砌砖故事的感悟泥瓦工匠砌砖故事的感悟工匠一:先把一排砖都砌完,然后拉一根水平线,看看哪些砖有问题,再进行调整工匠一:先把一排砖都砌完,然后拉一根水平线,看看哪些砖有问题,再进行调整工匠二:先拉一根水平线,砌每一块砖时,都与这根水平线比较,使每一块转都保持水平工匠二:先拉一根水平线,砌每一块砖时,都与这根水平线比较,使每一块转都保持水平对软件开发的启发:对软件开发的启发:是代码先行,还是测试先行是
41、代码先行,还是测试先行?79Why?Why?为什么需要测试驱动开发?为什么需要测试驱动开发?编码测试测试是为了测试是为了查找缺陷查找缺陷现实中存在的现象:现实中存在的现象:1、面对一个新的开发任务,往往第一个念头就是如何去实现它呢?2、抓起任务就开始编码,一边写,一边修改和设计。3、 “好像是这样做的” 感觉上差不多了!4、哎,时间很紧。我先把其他任务实现了,然后再好好测试吧。5、我是开发牛人。我的经验和感觉都这样告诉我,只要没人乱改我的代码,应该就没问题。再说这些边缘情况几乎不可能出现了。6、单元测试没有必要,简单测测就行了。7、DE说:“测试是TE的工作,与我无关”。代码先行代码先行引发的
42、后果:引发的后果:1、往往在测试后期,发现大量缺陷2、开发人员不得不频繁修改代码,代码不能持续稳定3、整个项目开发效率低,成本高80为什么需要测试驱动开发为什么需要测试驱动开发测试编码测试是为了测试是为了预防缺陷预防缺陷测试先行的一些优点:测试先行的一些优点:1、有利于保证代码的正确性2、有利于迅速发现Bug,定位Bug3、测试用例可以代替代码设计和代码注释4、有利于开发人员对工作成果建立信心 测试先行测试先行81What?What?什么是测试驱动开发什么是测试驱动开发? ?TDD TDD 的目标:的目标:Clean Code That WorksWork:让代码奏效Clean:让代码洁净TD
43、D TDD 的精髓:的精髓:以测试方案设计为准绳,验证设计、推导设计,驱动代码的以测试方案设计为准绳,验证设计、推导设计,驱动代码的有效和正确,从而实现软件过程的有效和正确,从而实现软件过程的“小步快跑小步快跑”82如何做测试驱动开发如何做测试驱动开发? ?TDD的步骤:的步骤:83课程目录课程目录3、技术开发技术开发测试管理测试管理2、产品开发、产品开发测试管理测试管理7.构建企业级构建企业级的产品测试的产品测试体系体系1、产品测试、产品测试概述概述0、公司及培、公司及培训课程介绍训课程介绍6、基于敏捷基于敏捷开发模式的开发模式的产品测试管产品测试管理理5、产品测试、产品测试技术与自动技术与
44、自动化化 4、产品测产品测试组织与团试组织与团队队84公司研发领导结构开发XX开发测试部测试质量部测试技术部A类产品测试部B类产品测试部C类产品测试部产品测试组产品测试组产品测试组物料测试部测试部组织结构测试部组织结构85敏捷开发模式敏捷开发模式三类测试活动:Story测试、迭代测试、SIT测试 ST(Story测试)迭代测试SIT系统集成测试86敏捷开发模式的测试活动敏捷开发模式的测试活动87审查和检视代码走读检视原理图、PCB审查集成测试高级测试工程师板卡测试软件单元测试整机测试软件功能测试系统测试工程样机阶段标准符合性测试资料测试整机测试软件功能测试系统测试工程样机阶段标准符合性测试资料
45、测试开发阶段测试工程师测试技术员工作重心:前端的设计审查和白盒测试工作重心:系统测试设计及新用例的执行工作重心:常规测试执行测试组织的递队建设测试组织的递队建设88测试人员职业发展测试人员职业发展Tester客户需求分析专家自动化测试专家产品/项目经理测试职能经理资深测试专家售前支持专家产品技术支持专家89建立高效的测试团队建立高效的测试团队流程的规划流程的规划资源的合理分配资源的合理分配技能提升技能提升建立测试部门公共平台建立测试部门公共平台建立合理的考核机制和激励方法建立合理的考核机制和激励方法解决测试人员的成就感问题解决测试人员的成就感问题90v定位正确开发人员高振幅、窄频带测试人员低振
46、幅、宽频带开发人员负责白盒测试、测试人员负责系统测试、验收测试v流程保证结构化的产品开发流程、明确角色职责定义版本提交、问题跟踪、问题定位等细节流程v测试技术、平台的发展打造测试人员技术积累、提升的平台v测试组织能力的持续提升手工测试工具测试全面自动测试v职业通道测试工程师高级测试工程师测试专家岗位轮换,培养多种技能解决测试人员的成就感解决测试人员的成就感91某公司提高测试人员地位的过程某公司提高测试人员地位的过程引入顾问公司阐述质量、测试重要性及标杆企业的情况引入顾问公司阐述质量、测试重要性及标杆企业的情况建立客户导向的企业文化建立客户导向的企业文化为测试人员建立职业通道为测试人员建立职业通
47、道建立绩效考核链条:客户建立绩效考核链条:客户运维运维测试测试开发开发92课程目录课程目录3、技术开发技术开发测试管理测试管理2、产品开发、产品开发测试管理测试管理7.构建企业级构建企业级的产品测试的产品测试体系体系1、产品测试、产品测试概述概述0、公司及培、公司及培训课程介绍训课程介绍6、基于敏捷基于敏捷开发模式的开发模式的产品测试管产品测试管理理5、产品测试、产品测试技术与自动技术与自动化化 4、产品测产品测试组织与团试组织与团队队93测试自动化成熟度测试自动化成熟度自 动 化 测 试 成 熟 度Level 0无自动化测试阶段无自动测试用例,测试工作全部手工操作非专业人员从事测试Level
48、 1初始阶段有脚本文件驱动的半自动测试无机算计软件专业人员从事测试无工具,无实验室Level 2发展阶段有部分测试用例全部自动化有机算计软件专业人员从事测试代码的开发,使用Java,C#语言使用工具和专门的实验室测试环境Level 3成熟阶段大量测试用例全部自动化有自己开发的共用代码库有测试用例自动运行系统,并与产品建造系统项结合有测试报告和统计分析服务Level 4高级阶段有高水平的测试开发人员,测试架构师有高度自动化的实验室系统,和专业的系统管理队伍有完善的自动化测试流程能对外提供自动测试的商业服务措施:培训和引进人才措施:培训和引进机算计软件专业人才尝试测试工具建立实验室措施:培训和引进
49、高级编码人才由开发人员帮助设计测试代码库系统的选择使用和整合各种工具措施:培训和引进测试设计和架构人才进一步提高实验室系统建立流程模型和商业服务模型注:MS资料,仅供参考94第一代自动化测试框架第一代自动化测试框架 【特点】: 无组织 unstructured 测试数据直接写在脚本中 test data embedded into the scripts 一个用例一个脚本 one script per one test case 基于捕获回放工具生成脚本,或直接手工编码 scripts generated using capture and replay tools or manually c
50、oded 事实上脚本无法维护 scripts virtually non-maintainable 被测系统变化时,脚本作废,无法重用 when the tested system changes they need to be captured or written again95第二代自动化测试框架第二代自动化测试框架 【特点】: 测试数据仍旧直接写在脚本中 test data is still embedded into the scripts 每个测试用例对应一个驱动脚本 one driver script per one test case 代码大部分是手工编写 code is mo
51、stly written manually 测试代码的实现和维护需要开发技能 both implementation and maintenance require programming skills 脚本具有很好的设计、健壮性和可维护性大大提高 scripts are well-designed, modular, robust, documented, and maintainable 除了测试执行外,脚本还实现了测试环境设置、清除以及错误检测及清除功能 scripts do not only handle test execution but also for example setu
52、p and cleanup and error detection and recovery96第三代自动化测试框架第三代自动化测试框架 【数据驱动】将测试输入和预期输出作为数据(通常是表格形式)scripting technique that stores test inputs and expected outcomes as data(normally in a tabular format)测试驱动脚本可以执行所有的测试用例One driver script can execute all of the designed test cases.测试数据从外部数据源读入Test data
53、 (test inputs and expected resutls) are read from an external data source没有编程技能的测试人员或用户可以方便地编辑外部数据External test data can be easily editable by test engineers or even business people or customers without any programming skills.97Test Library 2Test Library 1Test ExecutionSystemTest Monitoring SystemTe
54、st Design SystemSUT1SUT2KeyWordhandle1KeyWordhandle2KeyWordhandle3ExternalTest ToolKeyWordHandler1KeyWordHandler2Test DataparserTestRunnerLoggerReportGeneratorUserInterfaceUserInterfaceTestLogTestReportTestDataTestEngineer第四代自动化测试框架第四代自动化测试框架 【关键字驱动】关键字驱动是对数据驱动的扩展,指导怎样使用从脚本中分离出的数据An automation appro
55、ach where keywords instructing how to use the data are separated from the actual scripts具有数据驱动的全部优点Keyword-driven testing has all the benefits of data-driven testing关键字和测试数据都是从外部数据源输入Keywords and test data are read from an external data source自动化测试框架负责解释执行关键字When test cases are executed keywords are
56、 interpreted by a test library which is called by a test automation framework98代表技术代表技术:n 测试用例生成技术 基于代码、接口、规格 Based on code, interfaces, or specifications 自动生成大量用例 Leads to large numbers of test cases 难点是预期结果的生成 Challenge is how to generate the expected resultsnMBT-基于模型的测试 基于模型生成用例 Test cases are ge
57、nerated based on the model of the SUT 模型能够提供预期结果 The model can provide also the expected results for the generated tests 生成大量的用例覆盖模型,并提供不同的覆盖规则 Idea is to generate a large amount of tests that cover the model; Many different criteria for covering the model第五代自动化测试第五代自动化测试99自动化框架趋势分析自动化框架趋势分析萌芽期起步期成长
58、期成熟期衰退期第4代关键字驱动第2代简单脚本第5代基于模型第1代捕获回放第3代数据驱动第5代用例生成100趋势分析趋势分析n商用工具发展趋势:pMercurypIBMCustomerExtensions3rd PartyISV ToolsRational Software ArchitectRational Web/App/ System DeveloperRational Functional & ManualTesterRational Performance TesterRational Team Unifying PlatformTivoli Configuration Man
59、agerWebSphereBusinessModeler& MonitorRationalRequisiteProTivoliMonitoringWebSphereToolsAnalystArchitectDeveloperTesterITOperationsProject ManagerExecutiveRational Portfolio ManagerRational Data Architect说明:Mercury工具体系集成了功能测试、性能测试等工具,并有效配合说明:IBM Rational系列工具集成了需求、测试计划、设计、实现、执行和评估各个方面,使之形成有机的整体101
60、趋势分析趋势分析n商用工具发展趋势:pMS工具集成化,个阶段工具协同工作说明:微软的VSTS整合了UT、测试用例管理等工具,使之更好的支撑研发活动102自动化测试平台框架层次结构图自动化测试平台框架层次结构图103测试工具的分类测试工具的分类静态测试工具 - 扫描分析:Findbugs, JTest/C+Test 代码检查 PC-LINT动态测试工具- 内存检测工具:BoundsChecker- 录制/回放工具- 负载测试工具- 监控工具 - 性能检查 TrueTime104商业工具解决方案商业工具解决方案 单元测试:Parasoft JTest /C+test, PR QAC/C+、CompuWare DevPartner for Visua
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 住房贷款合同变更协议
- 商业智能化数字化转型的突破口
- 贷款担保抵押合同
- 升降机械项目可行性研究报告(范文)
- 平板显示光刻胶项目可行性研究报告(模板)
- 灌溉自动化与智能决策支持系统考核试卷
- 营养保健品的市场定位与目标消费群考核试卷
- 药品生产现场管理培训考核试题(附答案)
- 疝气患者生活护理指南
- 蜂巢结构与蜜蜂生活考核试卷
- 最新易制毒化学品管理制度大全
- 安全输血管理制度培训课件
- 小学美术1色彩的情感课件
- 奥沙利铂过敏反应
- 项目部临时动火作业审批表
- 机载直流用电设备电源特性要求及试验方法
- 项目质量管理评价表
- 饮料生产公司应急预案汇编参考范本
- 最新-临时救助申请审核审批表模板
- 蓝色大气商务商业计划书PPT模板
- 苏教版二年级(下册)科学全册单元测试卷含期中期末(有答案)
评论
0/150
提交评论