第7章验收测试课件.ppt
第7章 验收测试,验收测试(Acceptance Test):在软件产品完成了功能测试和系统测试之后、产品发布之前所进行的软件测试活动,它是技术测试的最后一个阶段,也称为交付测试。,第7章 验收测试 验收测试(Acceptanc,第7章 验收测试,7.1 验收测试的目的和主要内容7.2 验收测试安排7.3 验收测试流程7.4 产品规格说明书验证7.5 兼容性测试7.6 安装测试7.7 文档测试,第7章 验收测试7.1 验收测试的目的和主要内容,7.1 验收测试的目标和主要内容,1、验收测试的目的:验收测试是部署软件之前的最后一个测试操作。目的是:确保软件准备就绪,并且可以让最终用户将其用于执行软件既定的功能和任务。,7.1 验收测试的目标和主要内容1、验收测试的目的:,7.1 验收测试的目标和主要内容,2、验收测试的工作范围:制定测试计划,测试项,测试策略及验收通过准则,并经过客户参与的计划评审。建立测试环境,设计测试用例,并经过评审。准备测试数据,执行测试用例,记录测试结果。分析测试结果,根据验收通过准则分析测试结果,作出验收是否通过及测试评价。提交测试报告,7.1 验收测试的目标和主要内容2、验收测试的工作范围:,7.1 验收测试的目标和主要内容,3、验收测试完成后的主要交付物:验收测试计划验收测试用例及测试数据软件缺陷报告验收测试报告通过验收测试的,用于正式运行的系统版本通过验收测试的代码及更新后的相关软件文档其他文档,7.1 验收测试的目标和主要内容3、验收测试完成后的主要交付,7.1 验收测试的目标和主要内容,4、完成项目开发方交付的项目结果:可运行程序、安装/卸载程序,系统安装/卸载手册数据文件/数据库文件用户指南、联机帮助文档运行支持方案,包括用户培训材料、系统管理手册等需求规格说明书软件设计说明书源程序代码测试文档项目验收报告其他项目管理文档,7.1 验收测试的目标和主要内容4、完成项目开发方交付的项目,7.1 验收测试的目标和主要内容,5、验收测试完成的准则:规定的所有验收测试用例已经运行对软件缺陷的所有修改都已进行了回归测试发现的缺陷已经解决或关闭达到预期的覆盖率目标,一般要求产品特性或业务需求覆盖率为100%修改软件缺陷后,所有相关的软件文档的版本均已经更新获得用户/客户签署的验收测试报告,7.1 验收测试的目标和主要内容5、验收测试完成的准则:,7.2 验收测试安排,思考1:是否可以为了加快进度,将验收测试与系统测试合并或重叠?,带来两个问题:(1)用户会发现这个产品包含的众多问题,从而认为产品质量很差,开发商一般不愿意给用户留下这样的印象。(2)验收测试、系统测试可能重复发现相同的问题,而重复的或略有不同的缺陷报告将导致资源和时间的浪费。,7.2 验收测试安排思考1:是否可以为了加快进度,将验收测试,7.2 验收测试安排,思考1:是否可以为了加快进度,将验收测试与系统测试合并或重叠?,满足下列条件,合并验收测试与系统测试是有意义的:(1)用户代表实质性地参与了系统测试;(2)系统测试的环境足够真实;(3)验收测试用例是系统测试用例的一个子集;,7.2 验收测试安排思考1:是否可以为了加快进度,将验收测试,7.2 验收测试安排,思考2:针对产品软件或Web应用面向成千上万的用户,如何安排验收测试?,(1)将用户分类,对每类用户选择合适的用户代表;(2)有些企业使用来自某些特定公司的用户担当用户测试员;(3)有些企业发布产品的Beta测试版,请各类用户试用或体验新产品,同时搜集用户的反馈信息;,7.2 验收测试安排思考2:针对产品软件或Web应用面向成千,7.2 验收测试安排,思考3:验收测试需要多长时间?,(1)需要完成的工作的范围;(2)可以利用的资源;(3)用户工作的效率;(4)发现严重缺陷的多少;,7.2 验收测试安排思考3:验收测试需要多长时间?(1)需要,7.3 验收测试流程,下面以国内的政府/企业信息系统项目为背景,说明验收测试流程。,特点:(1)客户对象具体明确;(2)通常要求进行正式的验收测试;(3)如有必要还可能请监理方代表他们对项目过程进行监管和控制。,7.3 验收测试流程 下面以国内的政府/企业信息,7.3 验收测试流程,一个典型的验收测试流程:(1)开发方的项目经理代表项目组提出项目验收申请(2)客户方和监理方检查项目测试验收的前提条件是否具备:检查系统测试是否符合要求检查试运行准备工作是否就绪检查所要求的项目档案是否齐备(3)以客户方、监理方为主,三方共同编制验收测试计划;(4)三方评审和批准验收测试计划;(5)客户代表和监理方、开发方共同确定验收测试用例集,7.3 验收测试流程 一个典型的验收测试流程:,7.3 验收测试流程,(6)项目经理领导项目组,按照验收测试计划完成测试准备工作;为用户提供系统使用上的培训和指导;准备系统的安装计划;准备验收文档;(7)建立验收测试环境,安装系统,准备验收测试数据;(8)客户方、监理方进行系统试运行,运行测试用例集,记录测试结果;(9)如果发现缺陷,则在确认后项目组立即着手解决,7.3 验收测试流程(6)项目经理领导项目组,按照验收测试计,7.3 验收测试流程,(10)客户方、监理方完成回归测试,确认缺陷已经修复、并已经关闭。(11)项目组在修复缺陷后,更新相关的项目文档;(12)客户方、监理方审查验收测试执行情况,起草验收测试报告;(13)客户方、监理方签署验收测试报告。,7.3 验收测试流程(10)客户方、监理方完成回归测试,确认,正式验收测试,正式验收测试形式的优点包括:要测试的功能和特性都是已知的。测试的细节是已知的并且可以对其进行评测。这种测试可以自动执行,支持回归测试。可以对测试过程进行评测和监测。可接受性标准是已知的。正式验收测试形式的缺点包括:要求大量的资源和计划。这些测试可能是系统测试的再次实施。可能无法发现软件中由于主观原因造成的缺陷,这是因为您只查找预期要发现的缺陷。,正式验收测试正式验收测试形式的优点包括:,7.3 验收测试流程,注意事项:必须编写正式的、单独的验收测试报告验收测试必须在实际用户运行环境中进行由用户和测试部门共同执行。如公司自行开发产品,应由测试人员,产品设计部门,市场部门等共同进行。,7.3 验收测试流程注意事项:,测试,测试的优点包括:要测试的功能和特性都是已知的。可以对测试过程进行评测和监测。可接受性标准是已知的。与正式验收测试相比,可以发现更多由于主观原因造成的缺陷。测试的缺点包括:要求资源、计划和管理资源。无法控制所使用的测试用例。最终用户可能沿用系统工作的方式,并可能无法发现缺陷。最终用户可能专注于比较新系统与遗留系统,而不是专注于查找缺陷。用于验收测试的资源不受项目的控制,并且可能受到压缩。,测试 测试的优点包括:,测试,测试的优点是:测试由最终用户实施。大量的潜在测试资源。提高客户对参与人员的满意程度。与正式或非正式验收测试相比,可以发现更多由于主观原因造成的缺陷。测试的缺点是:未对所有功能和/或特性进行测试。测试流程难以评测。最终用户可能沿用系统工作的方式,并可能没有发现或没有报告缺陷。最终用户可能专注于比较新系统与遗留系统,而不是专注于查找缺陷。用于验收测试的资源不受项目的控制,并且可能受到压缩。可接受性标准是未知的。需要更多辅助性资源来管理 测试员。,测试 测试的优点是:,测试和测试,测试是指软件开发公司组织内部人员模拟各类用户行对即将面市软件产品(称为版本)进行测试,试图发现错误并修正。经过测试调整的软件产品称为版本。测试是指软件开发公司组织各方面的典型用户在日常工作中实际使用版本,并要求用户报告异常情况、提出批评意见。然后软件开发公司再对版本进行改错和完善。,测试和测试测试是指软件开发公司组织内部人员模拟各类用户,7.4 产品规格说明书的验证,产品规格说明书(需求规格说明书)是基于需求的定义,详细描述将要开发出一个什么样的产品,包括产品的用途,功能、用户界面的表现形式及其交互性等。,7.4 产品规格说明书的验证 产品规格说明书(,7.4 产品规格说明书的验证,产品规格说明书的审核 从客户的角度和立场进行审核工作。检验套用标准的正确性,不要和行业规范相抵触。审查、研究同类产品。验证产品规格说明书的完整性、准确性、一致性、合理性等特性。,7.4 产品规格说明书的验证产品规格说明书的审核,第7章验收测试课件,第7章验收测试课件,第7章验收测试课件,第7章验收测试课件,第7章验收测试课件,7.5 兼容性测试,软件兼容性数据共享兼容性硬件兼容性,7.5 兼容性测试软件兼容性,7.5 兼容性测试,1、软件兼容性 软件兼容性测试是指验证软件之间是否正确地交互和共享信息。(1)向前和向后兼容 向后兼容是指可以使用软件的以前版本。向前兼容指的是可以使用软件的未来版本。,7.5 兼容性测试1、软件兼容性,Backward&forward compatible,Must do,Had better design,Load old dataImport old dataExchange new data,Backward&forward compatibleD,7.5 兼容性测试,1、软件兼容性(2)多版本的测试将软件分类,从每种类型中选择部分测试软件按软件的流行程度选择比较流行的软件按软件推出的时间,选取最近年份内的程序和版本,7.5 兼容性测试1、软件兼容性,Impact of testing Multiple versions,Popularity:Top 100 or 1000 based on sales dadaAge:3-year oldType:break into types:DB,Word,Graph,Manufacturer,Criteria to Choose programs,Impact of testing Multiple ver,7.5 兼容性测试,1、软件兼容性(3)典型例子见P153 表7-1 测试设计矩阵表,7.5 兼容性测试1、软件兼容性,7.5 兼容性测试,2、数据共享的兼容性(1)剪切、复制和粘贴;(2)文件的存取;(3)文件导入和导出,7.5 兼容性测试2、数据共享的兼容性,7.5 兼容性测试,3、硬件兼容性测试(配置测试)具体步骤:(1)罗列目标用户的硬件类型,排除不需要考虑的类型;(2)使用等价类的方法缩小要测试的配置情况数目;(3)识别测试的重点;(4)填写配置测试矩阵。,7.5 兼容性测试3、硬件兼容性测试(配置测试),7.6 安装测试,可安装性测试:系统软件安装 应用软件安装 服务器的安装 客户端的安装 产品升级安装 等等,7.6 安装测试可安装性测试:,7.6 安装测试,安装测试注意事项:是否需要专业人员安装。安装说明书有无对安装环境做限制和要求。过程是否简单、易掌握。过程中是否有明显的、合理的提示信息。是否会出现不可预见或不可修复的错误。安装程序是否占用系统资源与原系统冲突,是否会影响原系统安全性。软件安装的完整性和灵活性。许可证号码与注册号码的验证。升级安装后原有程序是否可正常运行。卸载测试。,7.6 安装测试安装测试注意事项:,7.6 安装测试,应考虑在下列不同测试条件下执行(1)软件产品标明的最低配置(2)“干净”的操作系统(3)“脏”的操作系统(4)在不同的操作系统(5)升级安装(6)减少可用磁盘空间(7)中途取消(8)改变默认的安装路径,7.6 安装测试应考虑在下列不同测试条件下执行,7.7 文档测试,软件文档已成为软件的一个重要组成部分,而且种类繁多,对文档的测试也变得必不可少。文档的种类。联机帮助文档或用户手册;指南和向导;安装、设置指南;示例及模板;错误提示信息;用于演示的图像和声音;授权/注册登记表及用户许可协议;软件的包装、广告宣传材料;等等。,7.7 文档测试 软件文档已成为软件的一个重要组,怎样进行文档测试,好的文档能达到提高易用性、提高可靠性、降低技术支持的费用的目的,从而提高了产品的整体质量。非代码的文档测试主要检查文档的完整性、正确性、一致性、易理解性、易浏览性。软件驱动的文档还得像程序一样运行起来测试。,怎样进行文档测试 好的文档能达到提高易用性、提高,