软件测试流程及管理

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

授课内容一、软件测试工程师知识体系二、软件测试流程三、软件测试管理四、测试组管理五、测试成熟度模型(TMM)一、软件测试工程师知识体系1通用技能•沟通交流•职业发展•质量准则和概念•软件开发和维护一、软件测试工程师知识体系2测试技术/测试方法•测试原则和概念•验证和确认方法•测试管理、标准和环境一、软件测试工程师知识体系3测试计划•风险分析•测试策略•进程规划一、软件测试工程师知识体系4测试计划实施•测试设计•测试执行•缺陷跟踪与管理一、软件测试工程师知识体系5测试分析、报告与改进•定量测量•测试报告•改进测试进程二、软件测试流程测试计划配置环境测试设计和开发测试执行和评审测试报告及改进二、软件测试流程1、测试计划目的是规定测试活动的范围、方法、资源和进度;明确在测试的项目要测试的特性,要执行的测试任务,每个任务的负责人以及与计划相关的风险。二、软件测试流程测试计划活动包括:1)形成测试需求文档2)确定约束条件3)制定测试目标/目的4)建立测试策略5)初期测试活动开始6)确定可交付项目产品7)确定关键成功功能二、软件测试流程8)定义测试活动的参数9)确定项目的质量等级10)制定测试过程文档11)编制测试培训需求和计划12)自动测试决策13)建立测试的技术环境的文档14)制定质量控制计划二、软件测试流程15)进行风险评估16)确定测试进度17)建立测试数据需求文档18)定义对报告的要求19)定义小组成员的任务及职责20)编制测试计划文档21)进行测试就绪评审必要的计划和分析二、软件测试流程2、配置环境目的是配置软件测试必备的条件,确保测试达到预期目标。环境包括:硬件设备、网络设备、环境设施、软件、工具等二、软件测试流程配置环境活动包括:1)测试环境设计的准备活动2)设计测试环境3)测试环境集成与设置二、软件测试流程3测试设计目的是定义测试、相关需求和所需使用的用例分析和设计及测试程序定义和采用的测试技术,为测试开发奠定基础。二、软件测试流程测试设计活动包括:1)确立测试技术和策略2)准备和建立测试程序设计标准3)确定测试程序和测试脚本的清单、层次4)分配测试程序和脚本到测试组成员5)生成测试程序/脚本的设计输入及期望的输出6)自动测试脚本库二、软件测试流程4、测试开发目的是有效地开发和管理测试案例,确保测试尽量成效显著。测试开发是根据产品信息及测试需求、测试计划选择适应的测试工具编制测试规范及开发测试案例。二、软件测试流程测试开发活动包括:1)制定测试程序开发标准2)实施测试程序执行标准3)制定不同阶段的测试程序脚本4)为测试程序准备分步执行的伪代码5)为不同的测试阶段及测试子类型开发测试程序/脚本并执行二、软件测试流程6)与数据库小组协同工作,开发测试数据库环境。建立并维护测试数据基线7)测试程序同行评审8)建立和维护测试程序重用库9)测试实用程序二、软件测试流程5、测试执行和评审根据软件测试计划、软件测试规范及测试案例执行测试活动及BUG报告和测试报告。二、软件测试流程测试执行和评审活动包括:1)开发环境设置脚本2)执行不同的测试阶段的测试活动3)分析BUG并编制问题报告及定义缺陷跟踪工作并生成报告4)汇总数据,编制测试报告5)对测试过程进行评审以确定过程遵循相应标准和测试程序6)测试配置管理及建立跟踪活动进展的机制7)收集和分析度量三、软件测试管理1、项目管理概念定义:项目管理是在项目活动中运用知识、能、工具和技术,以便达到项目要求。项目管理通过应用下列过程得以完成:启动、计划、执行、控制和收尾。项目队伍管理项目工作,这些工作主要包括:•下列各有矛盾的需要:范围、时间、成本、风险和质量•有不同要求和期望的项目干系人•已明确的要求三、软件测试管理2、项目管理九大知识域:1)项目整体管理2)项目范围管理3)项目时间管理4)项目成本管理5)项目质量控制三、软件测试管理6)项目人力资源管理7)项目沟通管理8)项目风险管理9)项目采购管理三、软件测试管理1任务书2测试计划3测试规范4问题报告5测试报告启动计划执行、控制收尾组建测试组制定测试计划测试设计开发测试执行测试结果处理三、软件测试管理3、软件测试各阶段的里程碑1)组建测试组阶段的里程碑本阶段里程碑--测试任务书•测试需求•测试组成员•测试依据•测试能力(资源、范围、规模、工具)•测试进度三、软件测试管理2)测试计划阶段的里程碑--测试计划书•概述•计划测试的领域•测试方式描述•测试依据和标准•测试进度表•测试人员分配•配置范围和测试工具三、软件测试管理3)测试设计开发阶段的里程碑--测试规范、测试案例a)测试规范的内容:•背景信息•被测试的特性•功能考虑•测试考虑•测试设定三、软件测试管理b)测试案例的内容:•测试目标•要测试的功能•测试环境和其他条件•测试数据•过程•系统的预期行为三、软件测试管理4)测试执行阶段的里程碑--BUG报告Bug报告的内容:•Bug名称•被测试软件的版本•优先级与严重性•报告测试的步骤•Bug造成的后果•预计的操作结果•其他信息三、软件测试管理5)测试报告测试报告内容如GB/T17544描述的。软件缺陷划分的通用原则:•严重性表示软件缺陷的恶劣程度,反映其对产品和用户的影响•优先级表示修复缺陷的重要程度和应该何时修复三、软件测试管理4、软件测试动态管理1)测试进度表2)测试跟踪表3)管理测试硬件和软件配置4)测试变更管理5)测试配置管理三、软件测试管理5、软件测试质量管理软件质量保证(SQA)概念质量控制--为了保证每一件工作产品都满足对它的需求而应用于整个开发周期中的一系列审查、复审和测试。三、软件测试管理质量保证--由管理层的审计和报告功能构成。其目标是为管理层提供为获得产品质量信息所需的数据,从而获得产品质量是否符合预定目标的认识和信心。SQA是一种应用于整个软件过程的保护性活动。三、软件测试管理SQA包括:1)一种质量管理方法2)有效的软件工程技术(方法和工具)3)在整个软件过程中采用的正式技术复审4)一种多层次的测试策略5)对软件文档及修改的控制6)保证软件遵从软件开发标准的规程7)度量和报告三、软件测试管理软件检测过程的质量保证检测需求测试计划和准备测试结果处理测试实施质量保证活动三、软件测试管理6、软件测试过程的SQA活动包括:1)参与测试需求、测试过程和环境配置的设计2)复审各测试阶段活动,对其是否符合定义好的测试过程进行核实(合同评审、规范评审等)复审用于在过程中的多个不同阶段上,起到发现错误的作用三、软件测试管理3)审计软件问题单和测试报告,对其是否符合定义好的测试过程中的相应部分进行核实(度量、识别、记录和跟踪出现的偏差)4)确保软件测试工作及测试报告的偏差记录在案,并根据预定规程进行处理5)记录所有不符合的部分,并报告给高级管理者6)对测试过程中需要协调变化的控制和管理三、软件测试管理7、软件测试过程的质量保证文件1)合同评审(能力确认、资源确认、时间和价格)2)规范评审(测试方法确认、测试用例确认、测试工具确认、测试标准确认等)3)环境和设备配置确认4)软件问题单评审和确认5)测试报告的审核和批准三、软件测试管理8、软件测试成本管理1)测试实施成本包括:•预运行启动成本;•执行成本;•后运行成本。2)测试维护成本3)测试件开发成本三、软件测试管理预运行启动成本关注的是使时间总量,劳动力总量,尤其是使从事各类关键工作所需的熟练劳动力的总量最小化关键性工作包括:硬件配置、软件配置、测试环境的建立以及测试的确定。三、软件测试管理执行成本是使总的执行时间和所需的专用设备尽可能地减少。执行时间包括:值班管理时间和非值班管理时间完全重复测试:将所有测试全部重新运行一遍;部分重复测试:有选择性地重新运行部分测试。三、软件测试管理后运行成本是进行测试结果地分析和文档编制、测试环境的拆除以及原有环境的恢复,使所需时间和熟练劳动力的总量减少到最低限度。测试的效益--查找错误的有效性。三、软件测试管理降低测试实施成本的建议:•使用测试工具;•将自动化集成到测试用例本身;•执行过程中需要的手动互动;•测试结果的检验。三、软件测试管理测试维护工作包括:•对于报告并经确认的每一个问题都增加一项测试;•添加累进测试以测试新的变化;•定期检查所有的测试用例,以获得效果的连续性。三、软件测试管理降低测试维护成本的建议:•不要为了使测试某程序更容易而修改该程序,除非是永久性修改;•如果测试用例必须涉及产品的某一内部项目,侧应尽可能使该项目从开发起就成为永久性的项目。三、软件测试管理测试件是一系列主要的测试工作产品。主要包括:测试用例、测试数据以及支持文件(测试计划、测试规格说明、测试步骤和测试报告)测试件的主要目标是使测试产量极大化,测试的次数最小化。三、软件测试管理降低测试件开发成本的建议:•测试件开发要工程化;•只要可能应该对测试件进行重用;•只要有货,就购买测试件;•以文本文件的形式作为数据记录编写并存储。三、软件测试管理9、风险管理必须要问的几个关键问题是:•谁将使用产品?•用它干什么?•如果它出问题危险是什么?•它的工作结果是什么?•经济上有损失吗?•会失去用户的满意吗?会丢命吗?三、软件测试管理对每一个产品,必须做效益最高的测试,保证产品足够的可靠,足够的安全,并能满足用户/客户的需求。只是意味着不可能有足够的时间对每一件事情进行全面测试。三、软件测试管理•当以风险作为测试选择的基础时,我们做的就是要选择系统中将产生最严重后果的部分,并集中注意力对它们进行测试;•当选择测试重点的基础是使用频率,如果系统中的某部分被经常使用,但其中有错,那么该部分的频率使用将使得出现失效的可能性大大提高。•集中测试那些系统或程序中最可能出错的部分。三、软件测试管理风险不仅是决定测试管理的基础,同时也是决定日常测试活动的基础。风险分析常常是基本交流中的一件事。三、软件测试管理降低风险的方法:•软件开发过程中的每个开发阶段都有自己的产品,对它们进行测试可了解该阶段工作的成败,减少风险;•开发周期和测试周期相结合;•提高测试的有效性;三、软件测试管理10、软件测试的度量1)时间测量•查错--修改周期时间•积累测试时间三、软件测试管理2)测试覆盖度量•代码覆盖--断覆盖、调用对覆盖•需求覆盖--用户界面、计算准确性与精度、性能、数据存储•测试覆盖•系统覆盖•功能覆盖三、软件测试管理3)质量度量•缺陷改正百分比•每个基线报告的缺陷•缺陷检测效率•故障密度•测试趋势分析•测试有效性三、软件测试管理4)测试进度度量•测试程序执行状态•错误发现率•缺陷老化四、测试组管理1、组建测试小组1)测试组组织模式和规模2)测试人员的技能3)测试环境、设备和工具四、测试组管理测试组织结构设计因素:•高耸还是平缓--在首席行政长官和工人之间设立多层还是少层;•市场还是产品--是面向不同市场还是不同产品;•集中还是分散--将组织分级还是以分散;•专业人员还是工作人员--应拥有一定比例的专业人员和工作人员;•功能还是项目--面向功能或项目。四、测试组管理测试组规模是根据任务或测试人员与开发人员的比例来决定测试小组的规模。•基于技能的测试组织--为管理者提供了很大的灵活性•基于项目的专业测试组织--为项目管理者提供方便四、测试组管理测试小组的管理人员必须具备:•理解并评价软件测试过程、标准、策略、工具培训和度量的能力;•维护一个测试组织的能力,该组织必须坚强有力、独立自主、办事正规且没有偏见;•招收并留住杰出的测试专业人才的能力;•领导、交流、支持及控制的能力;•关照测试小组的时间。四、测试组管理2、测试组建立质量体系依据标准:BG/T15281—2000《检测和校准实验室能力的通用要求》业务范围:从事产品检测业务四、测试组管理GB/T15481—2000的内容:1)管理要求组织质量体系要求、标书和合同的评审检测和校准的分包服务和供应品的采购服务客户四、测试组管理1)管理要求抱怨不符合检测和(或)校准工作的控制纠正措施预防措施记录的控制内部审核管理审核四、测试组管理2)技术

1 / 71
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功