软件项目综合测试及验收.pptx
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 项目 综合测试 验收
- 资源描述:
-
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2015/11/10,#,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,#,单击此处编辑母版标题样式,软件工程项目驱动式教程,单元,5,软件项目的综合测试与验收,【,知识疏理,】,5.1,软件测试的概述,5.1.1,软件测试的概念,在,IEEE,所提出的软件工程标准术语中,软件测试的定义为“使用人工或自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清楚预期结果与实际结果之间的差别”。,软件测试的主要工作是验证(,verification,)和确认(,validation,)。,【,知识疏理,】,5.1,软件测试的概述,5.1.2,软件测试的地位和作用,软件测试在整个软件开发生命周期中占据着重要的地位,软件工程采用的生命周期方法把软件开发划分成多个阶段,把整个开发工作明确地划成若干个开发步骤,可以把复杂的问题按阶段分别加以解决,为中间产品提供了检验的依据,各阶段完成的软件文档成为检验软件质量的主要依据。,软件测试应该从生命周期的第一个阶段开始,并贯穿于整个软件开发生命周期的每个阶段,而且越早测试越好,早期检测和纠错是系统开发中最有效的方法。,【,知识疏理,】,5.1,软件测试的概述,5.1.3,软件测试的目的,软件测试的目的是为了保证软件产品的最终质量,在软件开发过程中,对软件产品进行质量控制。测试可以完成许多事情,但最重要的是可以衡量正在开发软件的质量。,【,知识疏理,】,5.1,软件测试的概述,5.1.4,软件测试的原则,为了进行有效的测试,测试人员理解和遵循以下基本原则。,(,1,)应当把“尽早地和不断地进行软件测试”作为软件开发者的座右铭,(,2,)程序员应避免检查自己的程序,(,3,)测试用例应由测试输入数据和与之对应的预期输出结果两部分组成,(,4,)在设计测试用例时,应当包括合理的输入条件和不合理的输入条件,【,知识疏理,】,5.1,软件测试的概述,5.1.4,软件测试的原则,(,5,)充分注意软件测试时的群集现象,(,6,)严格执行测试计划,排除测试的随意性,(,7,)应当对每一个测试结果做全面检查,(,8,)妥善保存测试过程中产生的各种数据和文档,(,9,)注意回归测试的关联性。,【,知识疏理,】,5.1,软件测试的概述,5.1.5,软件测试的分类,软件测试有多种分类方式,例如按测试阶段分类、按是否需要运行被测试软件分类、按是否需要查看代码分类,按测试执行时是否需要人工干预分类、按测试目的分类等,表,5-1,描述了软件测试的各种分类。,【,知识疏理,】,5.1,软件测试的概述,5.1.6,软件测试的流程,软件测试流程是指从软件测试开始到软件测试结束所经过的一系列准备、执行、分析的过程,一般可划分为制定测试计划、设计测试用例和测试过程、实施软件测试、评估软件测试等几个主要阶段。,【,知识疏理,】,5.1,软件测试的概述,5.1.6,软件测试的流程,1,制定测试计划,制定测试计划的主要目的是识别任务、分析风险、规划资源和确定进度。测试计划一般包括以下几个方面:,(,1,)软件测试背景 (,2,)软件测试依据,(,3,)测试范围的界定 (,4,)测试风险的确定,(,5,)测试资源的确定 (,6,)测试策略的确定,(,7,)制定测试进度表。,【,知识疏理,】,5.1.6,软件测试的流程,2,设计测试用例和测试过程,测试用例是为特定目标开发的测试输入、执行条件和预期结果的集合,这些特定目标可以是验证一个特定的程序路径,或核实是否符合特定需求。,设计测试用例就是设计针对特定功能或组合功能的测试方案,并编写成文档。,设计测试过程就是确定测试的基本执行过程,为测试的每个阶段的工作建立一个基本框架。,【,知识疏理,】,5.1,软件测试的概述,5.1.6,软件测试的流程,3,实施软件测试,实施测试包括测试准备、建立测试环境、获取测试数据、执行测试等方面。,(,1,)测试准备和建立测试环境,(,2,)获取测试数据,(,3,)执行测试。,【,知识疏理,】,5.1,软件测试的概述,5.1.6,软件测试的流程,4,评估与总结软件测试,软件测试的主要评估方法包括缺陷评估、测试覆盖和质量评测。质量评测是对测试对象的可靠性、稳定性以及性能的评测,它建立在对测试结果的评估和对测试过程中确定的变更请求分析的基础上。,【,知识疏理,】,5.1,软件测试的概述,5.1.7,软件测试人员的类型和要求,1,软件测试人员的类型,软件测试过程中,必须要合理地组织人员,一般将软件测试人员分成三部分:一部分为上机测试人员(测试执行者),一部分为测试结果检查核对人员,还有一部分是测试数据制作人员,这三部分人员应该紧密配合、相互协调,保证软件测试工作的顺利进行。,【,知识疏理,】,5.1,软件测试的概述,5.1.7,软件测试人员的类型和要求,2,软件测试人员的要求,软件测试已经成为了一个独立的技术学科,软件测试技术不断更新和完善,新工具、新流程、新测试方法都在不断涌现,如果没有合格的测试人员,测试工作是不可能高质高效地完成。,【,知识疏理,】,5.2,测试用例设计,测试用例(,Test Case,,简称为,TC,)贯穿于整个测试的执行过程,一个好的测试用例会使测试工作的效果事半功倍,并且能尽早发现一些隐藏的缺陷。,【,知识疏理,】,5.2,测试用例设计,5.2.1,测试用例的基本概念,测试用例是为某个特定目的而设计的一组测试输入、执行条件以及预期结果。,测试用例输入输出测试环境,其中,输入是指测试数据和操作步骤;输出是指系统的预期执行结果;测试环境是指系统环境配置,包括硬件环境、软件环境和数据,有时还包括网络环境。,【,知识疏理,】,5.2,测试用例设计,5.5.2,测试用例的主要作用,测试用例始终贯穿于整个软件测试全过程,其作用主要体现在以下几个方面。,(,1,)指导测试的实施,(,2,)指导测试数据的规划,(,3,)指导测试脚本的编写,(,4,)作为评判的基准,(,5,)作为分析缺陷的基准。,【,知识疏理,】,5.2,测试用例设计,5.5.3,测试用例设计的基本原则,设计测试用例时应遵循以下一些基本原则。,(,1,)测试用例的正确性,(,2,)测试用例的代表性,(,3,)测试结果的可判定性,(,4,)测试结果的可再现性。,【,知识疏理,】,5.2,测试用例设计,5.2.4,测试用例的编写标准,一个优秀的测试用例应该包含以下要素。,(,1,)测试用例的编号,(,2,)测试标题,(,3,)测试项,(,4,)测试环境要求,(,5,)测试的步骤,【,知识疏理,】,5.2,测试用例设计,5.2.4,测试用例的编写标准,(,6,)测试的预期结果,(,7,)测试用例之间的关联,(,8,)测试日期,(,9,)测试用例设计人员和测试人员,(,10,)测试用例的优先级。,【,知识疏理,】,5.3,黑盒测试,5.3.1,黑盒测试的基本概念,黑盒测试又称为数据驱动测试或基于规范的测试。这种方法进行测试时,可以将程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,注重于测试软件的功能性要求,测试者在程序接口处进行测试,只检查程序功能是否按照规格说明书的规定正常使用,程序是否能接收输入数据而产生正确的输出信息,并且保持数据库或文件的完整性。因此黑盒测试是从用户角度的测试,确认测试、系统测试、验收测试一般都采用黑盒测试。,【,知识疏理,】,5.3,黑盒测试,5.3.1,黑盒测试的基本概念,1,黑盒测试可以发现的错误类型,黑盒测试有两种结果,即通过测试和测试失败。能发现以下几类错误:,(,1,)功能不能实现或遗漏。,(,2,)界面错误。,(,3,)数据结构或外部数据库访问错误。,(,4,)性能错误。,(,5,)初始化和终止错误。,【,知识疏理,】,5.3.1,黑盒测试的基本概念,2,黑盒测试对程序功能性测试的要求,(,1,)每个软件特性必须被一个测试用例或一个被认可的异常所覆盖。,(,2,)利用数据类型和数据值的最小集测试。,(,3,)利用一系列真实的数据类型和数据值运行,测试超负荷及其他“最坏情况”的结果。,(,4,)利用假想的数据类型和数据值运行,测试排斥不规则输入的能力。,(,5,)测试影响性能的关键模块,例如基本算法、精度、时间和容量等是否正常。,【,知识疏理,】,5.3,黑盒测试,5.3.1,黑盒测试的基本概念,3,黑盒测试的优缺点,黑盒测试具有如下优点:,(,1,)有针对性地寻找问题,并且定位问题更准确。,(,2,)黑盒测试可以证明软件系统是否达到用户要求的功能,符合用户的工作要求。,(,3,)能重复执行相同的功用,测试工作中最枯燥的部分可交由机器完成。,【,知识疏理,】,5.3,黑盒测试,5.3.1,黑盒测试的基本概念,3,黑盒测试的优缺点,黑盒测试具有如下缺点:,(,1,)需要充分了解软件系统用到的技术,测试人员需要具有较多经验。,(,2,)在测试过程中很多是手工测试操作。,(,3,)测试人员要负责大量文档、报表的编制和整理工作。,【,知识疏理,】,5.3,黑盒测试,5.3.1,黑盒测试的基本概念,4,采用黑盒技术设计测试用例的主要方法,采用黑盒技术设计测试用例的主要方法有以下几种。,(,1,)等价类划分法。(,2,)边界值分析法。,(,3,)决策表法。(,4,)因果图法。,(,5,)功能图分析法。(,6,)场景设计法。,(,7,)错误推断法。(,8,)正交试验法。,【,知识疏理,】,5.3.2,等价类划分法,等价类划分是一种典型的、常用的黑盒测试方法。,1,等价类的划分,等价类可划分为有效等价类和无效等价类两种不同的情况。,(,1,)有效等价类,有效等价类是指对于程序规格说明来说,是合理的、有意义的输入数据构成的集合。,(,2,)无效等价类,无效等价类是指对于程序规格说明来说,是不合理的、无意义的输入数据构成的集合。,【,知识疏理,】,5.3,黑盒测试,5.3.2,等价类划分法,2,划分等价类的方法,(,1,)按区间划分,如果可能的输入数据属于一个取值范围或值的个数限制范围,则可以确定,1,个有效等价类和,2,个无效等价类。,(,2,)按数值划分,如果规格说明规定了输入数据的一组值,而且程序要对每个输入值分别进行处理。则可为每一个输入值确立一个有效等价类,并针对这组值确立一个无效等价类,这是所有不允许的输入的集合。,【,知识疏理,】,5.3,黑盒测试,5.3.2,等价类划分法,2,划分等价类的方法,(,3,)按数值集合划分,如果规格说明规定了输入值的集合,则可确定,1,个有效等价类和,1,个无效等价类。,(,4,)按限制条件划分,在输入条件是一个布尔量的情况下,可确定一个有效等价类(符合限制条件)和一个无效等价类(不符合限制条件)。,【,知识疏理,】,5.3,黑盒测试,5.3.2,等价类划分法,2,划分等价类的方法,(,5,)按限制规则划分,在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。,(,6,)按处理方式划分,在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步划分为更小的等价类。,【,知识疏理,】,5.3.2,等价类划分法,3,等价类划分测试用例设计,根据等价类表设计测试用例的方法如下。,(,1,)划分等价类,形成等价类表,为每个等价类规定一个唯一的编号。,(,2,)设计一个新的测试用例,使它尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到测试用例覆盖了所有有效等价类。,(,3,)设计一个新的测试用例,使它仅覆盖一个还没有被覆盖的无效等价类,重复这一步,直到测试用例覆盖了所有的无效等价类。,【,知识疏理,】,5.3.3,边界值分析法,边界值分析法是对输入或输出的边界值进行测试的一种黑盒测试方法。在测试过程中,边界值分析法通过选择等价类边界的测试用例进行测试。,使用边界值分析方法设计测试用例,首先应确定边界情况,通常输入等价类和输出等价类的边界,就是应着重测试的边界情况。应当选取正好等于、刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。,【,知识疏理,】,5.3.3,边界值分析法,边界值分析方法选择测试用例的原则如下所示。,(,1,)如果输入条件规定了值的范围,则应该取刚达到这个范围的边界值,以及刚刚超过这个范围边界的值作为测试输入数据。,(,2,)如果输入条件规定了值的个数,则用最大个数、最小个数、比最大个数多,1,个,比最小个数少,1,个的数作为测试数据。,(,3,)根据规格说明的每,1,个输出条件,使用前面两条规则。,(,4,)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第,1,个和最后,1,个元素作为测试用例。,(,5,)如果程序使用了,1,个内部结构,应该选取这个内部数据结构的边界值作为测试用例。,(,6,)分析规格说明,找出其他可能的边界条件。,【,知识疏理,】,5.3.4,决策表法,决策表是把作为条件的所有输入的各种组合值以及对应输出值都罗列出来而形成的表格。,决策表通常由条件桩、条件项、动作桩和动作项,4,个部分组成。,构造决策表的主要步骤如下所示。,(,1,)列出所有的条件桩和动作桩。,(,2,)分析输入域,对输入域进行等价类划分。,(,3,)分析输出域,对输出进行细化,以指导具体的输出动作。,(,4,)确定规则的个数,假如有,n,个条件,每一个条件有两个取值,则有,2n,种规则。,(,5,)填写条件项和动作项,得到初始决策表。,(,6,)合并相似规则,简化决策表,得到最终决策表。,【,知识疏理,】,5.4,白盒测试,5.4.1,白盒测试的基本概念,白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。,【,知识疏理,】,5.4,白盒测试,5.4.1,白盒测试的基本概念,“白盒”法是穷举路径测试,在使用这一方法时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。,白盒测试通常可分为静态测试和动态测试两类方法。,白盒测试的测试方法有代码检查法、静态结构分析法、逻辑覆盖法、基本路径测试法、域测试法、符号测试法、数据流测试法、,Z,路径覆盖法和程序变异法等。,【,知识疏理,】,5.4,白盒测试,5.4.2,代码检查法,代码检查是静态测试的主要方法,它包括代码走查、桌面检查、流程图审查等。,1,代码检查的概念,代码检查主要检查代码和设计意图的一致性、代码结构的合理性、代码编写的标准性和可读性、代码逻辑表达的正确性等方面。,【,知识疏理,】,5.4.2,代码检查法,2,代码检查的目的,代码检查是为达到以下目的:,(,1,)检查程序是不是按照某种编码标准或规范编写的。,(,2,)检查代码是不是符合流程图要求。,(,3,)发现程序缺陷和程序产生的错误。,(,4,)检查有没有遗漏的项目。,(,5,)检查代码是否易于移植。,(,6,)使代码易于阅读、理解和维护。,【,知识疏理,】,5.4,白盒测试,5.4.2,代码检查法,3,代码检查的方式,代码检查的方式主要有以下,3,种。,(,1,)桌面检查,(,2,)走查,(,3,)代码审查,4,代码检查项目及原则,代码检查的主要项目及原则如表,5-5,所示。,【,知识疏理,】,5.4,白盒测试,5.4.2,代码检查法,5,使用缺陷检查表列出典型错误,在进行人工代码检查时,可以制作代码走查缺陷表。在缺陷检查表中,我们列出工作中遇到的典型错误,如表,5-6,所示。,【,知识疏理,】,5.4,白盒测试,5.4.2,代码检查法,6,静态结构分析,静态结构分析是测试者通过使用测试工具分析程序源代码的系统结构、数据结构、数据接口、内部控制逻辑等内部结构,生成函数调用关系图、模块控制流图、内部文件调用关系图等各种图形和图表,清晰地标识整个软件的组成结构,通过分析这些图表(包括控制流分析、数据流分析、接口分析、表达式分析),检查软件是否存在缺陷或错误。,【,知识疏理,】,5.4,白盒测试,5.4.3,逻辑覆盖法,从覆盖源代码的不同程度可以分为以下,6,个标准:语句覆盖(,Statement Coverage,,,SC,)、判定覆盖(,Decision Coverage,,,DC,,又称为分支覆盖)、条件覆盖(,Condition Coverage,,,CC,)、判定,/,条件覆盖(,Decision/Condition Coverage,,,D/CC,,又称为分支,/,条件覆盖)、条件组合覆盖(,Condition Combination Coverage,,,CCC,)和路径覆盖,(Path Coverage,,,PC),。,【,知识疏理,】,5.4.3,逻辑覆盖法,首先对表,5-7,所示的方法,logicExample(),的代码进行分析。,【,知识疏理,】,5.4.3,逻辑覆盖法,根据源代码画出流程图。方法,logicExample(),的流程图如图,5-1,所示。,图,5-1,方法,logicExample(),的流程图,【,知识疏理,】,5.4,白盒测试,5.4.3,逻辑覆盖法,1,语句覆盖,(,1,)基本概念,设计足够多的测试用例,使得被测试程序中的每条可执行语句至少被执行一次。在本例中,可执行语句是指语句块,1,、语句块,2,、语句块,3,、语句块,4,中的语句。,【,知识疏理,】,5.4,白盒测试,5.4.3,逻辑覆盖法,1,语句覆盖,(,2,)设计测试用例,语句覆盖的测试用例如表,5-8,所示。,【,知识疏理,】,5.4,白盒测试,5.4.3,逻辑覆盖法,1,语句覆盖,(,2,)设计测试用例,x=3,y=3,可以执行到语句块,1,和语句块,4,,所走的路径:,a-b-e-f,。,x=-3,y=0,可以执行到语句块,2,、语句块,3,和语句块,4,,所走的路径:,a-c-d-f,。,在六种逻辑覆盖标准中,语句覆盖标准是最弱的。,【,知识疏理,】,5.4,白盒测试,5.4.3,逻辑覆盖法,2,判定覆盖(分支覆盖),(,1,)基本概念,设计足够多的测试用例,使得被测试程序中的每个判断的“真”、“假”分支至少被执行一次。在本例中共有两个判断,if(x0&y0),(记为,P1,)和,if(magic 0&y0),(记为,P1,)和,if(magic 0,(记为,C1,)、,y0,(记为,C2,)和,magic,判定覆盖,-,条件覆盖,-,判定,/,条件覆盖,-,条件组合覆盖,-,路径覆盖。,【,知识疏理,】,5.4,白盒测试,5.4.4,基本路径测试法,1,基本概念,基本路径测试法在程序控制流图的基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例的方法。设计出的测试用例要保证在测试中程序的每个可执行语句至少执行一次。,【,知识疏理,】,5.4,白盒测试,5.4.4,基本路径测试法,1,基本概念,基本路径测试法包括以下,4,个步骤和,1,个工具方法。,(,1,)绘制程序控制流图,程序控制流图是描述程序控制流的一种图示方法。,(,2,)计算程序的环路复杂度,即,McCabe,复杂性度量。,(,3,)确定独立路径。,(,4,)设计测试用例。,【,知识疏理,】,5.4,白盒测试,5.4.4,基本路径测试法,2,基本路径测试法的实现步骤,例如,对于表,5-15,所示的方法,NumCalc(),,用基本路径测试法进行测试。,【,知识疏理,】,5.4,白盒测试,5.4.4,基本路径测试法,例如,对于表,5-15,所示的方法,NumCalc(),,用基本路径测试法进行测试。,2,基本路径测试法的实现步骤,【,知识疏理,】,5.4,白盒测试,5.4.4,基本路径测试法,2,基本路径测试法的实现步骤,第一步:绘制程序流程图控制流图,方法,NumCalc(),的程序流程图和对应的控制流图如图,5-6,所示。,第二步:计算环路复杂度,环路复杂度(也称为圈复杂度)是一种为程序逻辑复杂性提供定量测度的软件度量,将该度量用于计算程序基本的独立路径数目,这是确保所有语句至少执行一次的测试数量的上界。,【,知识疏理,】,5.4,白盒测试,5.4.4,基本路径测试法,下面,以图,5-7,为例讨论环路复杂度的计算方法。有以下三种方法计算环路复杂度:,(,1,)观察法,控制流图中区域的数量对应于环型的复杂性,环路复杂度,=,总的区域数,=,控制流图中封闭区域数量,+1,个开放区域。图,5-7,中有,3,个封闭区域,分别为,、,、,,,为开放区域,因此环路复杂度为,4,。,【,知识疏理,】,5.4,白盒测试,5.4.4,基本路径测试法,下面,以图,5-7,为例讨论环路复杂度的计算方法。有以下三种方法计算环路复杂度:,(,2,)公式法,控制流图,G,的环路复杂度,V(G),的计算公式为:,V(G)=e-n+2,其中,,e,表示控制流图中边的数量,,n,表示控制流图中结点的数量。图,5-7,中有,10,条边、,8,个结点,所以环路复杂度,V(G)=10-8+2=4,。,【,知识疏理,】,5.4.4,基本路径测试法,(,3,)判定结点法,利用程序代码中独立判定结点的数量来计算环路复杂度。,控制流图,G,的环路复杂度,V(G),的计算公式为:,V(G)=P+1,其中,P,表示控制流图,G,中判定结点的数量。,图,5-7,中有,3,个判定结点,分别为、,所以环路复杂度,V(G)=3+1,4,。,环路复杂度“,4,”是构成基本路径集的独立路径数的上界,可以据此得到应该设计的测试用例的数目。,【,知识疏理,】,5.4.4,基本路径测试法,第三步:确定独立路径,根据上面的计算方法,可得出,4,个独立路径,所谓独立路径,是指和其他的独立路径相比,至少引入一个新处理语句或一个新判断的程序通路。,V(G,的,),值正好等于该程序的独立路径的条数。,【,知识疏理,】,5.4.4,基本路径测试法,第三步:确定独立路径,图,5-7,中的,4,条独立路径如下所示。,路径,1,:,4,14,路径,2,:,4,6,7,14,路径,3,:,4,6,8,10,13,4,14,路径,4,:,4,6,8,11,13,4,14,根据上面的独立路径,去设计输入数据,使程序分别执行到上面四条路径。,【,知识疏理,】,5.4.4,基本路径测试法,第四步:设计测试用例,为了确保基本路径集中的每一条路径的执行,根据判断结点给出的条件,选择适当的数据以保证某一条路径可以被测试到,满足上面例子基本路径集的测试用例如表,5-16,所示。,【,知识疏理,】,5.4.4,基本路径测试法,第四步:设计测试用例,每个测试用例执行之后,与预期结果进行比较,如果所有测试用例都执行完毕,则可以确信程序中所有的可执行语句至少被执行了一次。,【,知识疏理,】,5.4,白盒测试,5.4.4,基本路径测试法,3,基本路径测试法的图形矩阵工具,为了使导出控制流图和决定基本测试路径的过程均自动化实现,可以开发一个辅助基本路径测试的方法工具,称为图形矩阵,(graph matrix),。,利用图形矩阵可以实现自动地确定一个基本路径集。一个图形矩阵是一个方阵,其行,/,列数对应程序控制流图中的结点数,每行和每列依次对应到一个被标识的结点,矩阵元素对应到结点间的连接(即边)。,【,知识疏理,】,5.4,白盒测试,5.4.4,基本路径测试法,5.4.5,循环语句测试,循环语句测试是一种白盒测试技术,它总是与边界值测试密切相关。可以把循环语句分为以下,4,种:简单循环、串接循环、嵌套循环和不规则循环,如图,5-9,所示。,图,5-9,常见循环类型,【,方法指导,】,5.5,集成测试,1,集成测试的基本概念,集成测试又称为组装测试或联合测试,是介于单元测试和系统测试之间,将所有经过单元测试的软件构成单位按照设计要求组装成子系统或系统,然后进行测试的活动。,【,方法指导,】,5.5,集成测试,2,集成测试的主要关注内容,集成测试关注的是软件单元间的接口,接口之间的数据传递关系以及单元组合后是否实现预计的功能,具体包括以下几个方面。,(,1,)在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失。,(,2,)一个模块的功能是否会对另一个模块的功能产生不利的影响。,【,方法指导,】,5.5,集成测试,2,集成测试的主要关注内容,(,3,)各个子功能组合起来,能否达到预期要求的父功能。,(,4,)全局数据结构是否存在问题。,(,5,)单个模块的误差累积起来,是否会放大,以至于达到不能接受的程度。,【,方法指导,】,5.5,集成测试,3,系统集成的主要策略,集成策略是在对测试对象分析的基础上,描述软件单元集成(组装)的方式和方法。集成策略是集成测试过程中各种活动的基础,其后的各项活动都是以集成策略为依据。集成策略有多种,本单元主要介绍基于功能分解的集成和基于,MM,路径的集成两种策略。,【,方法指导,】,5.5,集成测试,4,集成测试的主要过程,集成测试的主要依据是,软件需求规格说明书,、,软件设计说明书,和源代码等。集成测试过程是一系列相互关联的受控活动组成,主要包括集成测试计划、集成测试设计、集成测试实现、集成测试执行和集成测试执行,5,个阶段,当然也包含集成回归测试活动。,【,方法指导,】,5.5,集成测试,5,集成测试执行和报告,在集成测试执行阶段,集成测试人员将搭建测试环境,运行测试用例,查看实际运行结果并判断该结果是否与预期结果相吻合,以确定被测对象中是否存在缺陷。,【,方法指导,】,5.6,系统测试,1,系统测试的基本概念,系统测试是将已经集成好的软件系统,作为整个基于计算机系统的一个元素,与计算机硬件、某些支持软件、数据库和人员等其他系统元素结合在一起,在实际运用或使用环境中,对计算机系统进行一系列的组装测试和确认测试。,【,方法指导,】,5.6,系统测试,2,系统测试的承担人员,开发人员在系统测试阶段的主要职责是参与系统测试计划和方案的评审、跟踪解决测试人员发现的缺陷、评审系统测试报告。,测试人员在系统测试阶段的主要职责包括制定系统测试计划和方案并组织评审、按照系统测试方案实现测试用例和测试代码、选用所需的测试工具、编写测试规程、执行系统测试用例、提交并跟踪缺陷、完成系统测试报告并组织评审、输出测试案例和总结等文档。,另外系统测试过程中还可能涉及到系统分析人员、配置管理人员和质量保证人员等。,【,方法指导,】,5.6,系统测试,3,系统测试的主要过程,系统测试过程通常包括系统测试计划、系统测试设计、系统测试实现、系统预测试、系统测试执行、回归测试和系统测试报告等活动。在系统执行期间可包含多轮回归测试。,4,系统测试的入口准则和出口准则,系统测试的入口准则是可以开始进行系统测试的前提条件,通常描述为当某些活动完成并达到指定的质量标准。,【,方法指导,】,5.6,系统测试,3,系统测试的主要过程,常用的入口准则包括:,(,1,)集成测试结束报告已提交并通过批准。,(,2,)集成测试后的代码完成基线。,(,3,)系统预测试项全部通过。,(,4,)系统测试计划和用例开发完成并通过评审。,系统测试报告提交,通过评审并获得批准。,【,方法指导,】,5.6,系统测试,3,系统测试的主要过程,系统测试的出口准则是指系统测试可以结束的标准,常用的出口准则包括:,达到,100%,的功能覆盖。,缺陷呈收敛状态。,缺陷修改完成并通过回归测试。,系统测试报告提交,通过评审并获得批准。,【,方法指导,】,5.7,验收测试,5.7.1,验收测试概述,1,验收测试的基本概述,验收测试(,Acceptance Testing,)又称为接受测试,是在系统测试后期,以用户测试为主,或有质量保证人员共同参与的测试。,【,方法指导,】,5.7,验收测试,5.7.1,验收测试概述,2,验收测试的总体思路,用户验收测试是软件开发结束后,用户对软件产品投入实际应用以前进行的最后一次质量检验活动。它要回答开发的软件产品是否符合预期的各项要求,以及用户能否接受的问题。,【,方法指导,】,5.7,验收测试,5.7.2,验收测试的常用策略,实施验收测试的常用策略有三种:正式验收测试、非正式验收测试或,Alpha,(,)测试、,Beta,(,)测试,验收测试时选择的策略通常建立在合同需求、组织和公司标准以及应用领域的基础上。,【,方法指导,】,5.7,验收测试,5.7.3,验收测试的测试流程,验收测试的测试步骤和主要测试活动如下所示。,(,1,)软件需求分析。,(,2,)编制,测试计划,和,项目验收准则,。,(,3,)测试设计和测试用例设计。,(,4,)测试环境搭建。,(,5,)测试实施。,(,6,)测试结果分析。,(,7,)测试报告。,【,方法指导,】,5.7,验收测试,5.7.4,验收测试的测试内容,验收测试通常可以包括:安装(升级)、启动与关机、功能测试(正例、重要算法、边界、时序、反例、错误处理)、性能测试(正常的负载、容量变化)、压力测试(临界的负载、容量变化)、配置测试、平台测试、安全性测试、恢复测试(在出现掉电、硬件故障或切换、网络故障等情况时,系统是否能够正常运行)、可靠性测试等。,【,模板预览,】,5.8,软件项目的综合测试与验收阶段的主要文档,软件项目的综合测试与验收阶段的主要文档包括,测试用例标准,、,测试计划,、,系统测试报告,等。,5.8.1,测试用例标准模板,表,5-17,是,ANSI/IEEE 829,标准中给出的测试用例编写的表格形式,编写测试用例时可以参考。,5.8.2,测试计划模板,测试计划描述了要进行的测试活动的范围、方法、资源和进度的文档。它确定测试项、被测特性、测试任务、谁执行任务、各种可能的风险。,【,模板预览,】,5.8,软件项目的综合测试与验收阶段的主要文档,软件项目的综合测试与验收阶段的主要文档包括,测试用例标准,、,测试计划,、,系统测试报告,等。,5.8.3,测试分析报告模板,测试分析报告参考模板如下所示。,【,项目实战,】,【,任务描述,】,在完成人力资源管理系统的各功能模块的编码和调试后,即可开始进行系统联调和综合测试,包括集成测试、系统测试、验收测试等。最后,将测试后的系统交付用户进行验收测试和试运行。,【,任务,5-1】,对人力资源管理系统进行集成测试。,【,任务,5-2】,对人力资源管理系统进行系统测试。,【,任务,5-3】,对人力资源管理系统进行验收测试。,【,任务实现,】,【,任务,5-1,】,人力资源管理系统的集成测试,人力资源管理系统,1.0,版已开发完成,前面已经过单元测试并达到入口条件,为了测试各基本组成单位之间的接口交互是否正确,拟进行集成测试。本系统的集成测试采用基于消息集成的策略,通过遍历“用户登录”、“单位信息设置”、“基本信息设置”相关的消息路径,确定各个逻辑层之间的消息协作是否正确,是否满足设计要求。,【,任务实现,】,【,任务,5-2,】,人力资源管理系统的系统测试,在完成单元测试和集成测试之后,将进行系统测试,系统测试是站在用户角度,验证系统是否满足用户需求。按照系统测试计划、系统测试设计、系统测试执行和系统测试报告的测试过程对“用户登录”、“单位信息设置”、“基本信息设置”,3,项功能进行系统测试。,【,任务实现,】,【,任务,5-3,】,人力资源管理系统的验收,人力资源管理系统的初步验收的主要活动如下所示。,1,项目验收的组织机构,2,验收标准,3,阶段成果确认,4,初步验收,【,任务扩展,】,【,任务,5-4,】,人力资源管理系统综合测试与验收的扩展任务,【,任务描述,】,(,1,)参照测试用例标准模板,编写人力资源管理系统集成测试和系统测试的测试用例。,(,2,)根据人力资源管理系统的综合测试内容,参照测试计划模块,编写人力资源管理系统集成测试、系统测试和验收测试的,测试计划,。,(,3,)根据人力资源管理系统的综合测试情况,参照测试分析报告,编写人力资源管理系统,测试分析报告,。,【,任务扩展,】,【,任务,5-4,】,人力资源管理系统综合测试与验收的扩展任务,【,任务描述,】,(,4,)将新开发的“部门设置”模块、“人事管理”模块、“人事档案管理”模块、“薪酬管理”模块进行组装,然后再一次进行集成测试和系统测试。,(,5,)对,B/S,模式中的“用户登录”模块、“用户注册”模块、人员信息查询、新增与修改模块进行组装,然后在,B/S,环境中进行集成测试和系统测试。,【,小试牛刀,】,【,任务,5-5,】,进销存管理系统的综合测试与验收,【,任务描述,】,(,1,)将进销存管理系统的“用户登录”、“员工基本信息管理”、“供货商基本信息管理”、“商品类别和商品信息管理”等模块以及“主界面”进行组装。,(,2,)对进销存管理系统进行集成测试。,(,3,)对进销存管理系统进行系统测试。,(,4,)对进销存管理系统进行验收测试。,【,单元小结,】,本单元主要介绍了软件测试地位和作用、目的、原则、分类、流程,测试用例设计、墨盒测试、白盒测试、集成测试、系统测试和验收测试等内容。软件测试是使用人工操作或者软件自动运行的方式来检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别的过程。它是帮助识别开发完成的计算机软件的正确度、完全度和质量的软件过程。本单元以人力资源管理系统为例,重点阐述了软件系统的集成测试、系统测试和验收测试。,快乐学习、高效学习,展开阅读全文

咨信网声明:本文档由用户上传并分享,仅供学习交流、研究之用,未经授权,严禁复制、发行、汇编、翻译或网络传播等,侵权必究。
咨信网小贴示:
1、浏览或下载可查看了解,请点击【咨信网告知】。
2、下载文件中如有侵权或不适当内容,将立即纠正。
3、如果因为网速或其他原因下载失败请重新下载,重复下载[60天内]不扣币。
4、开具发票登录电脑端申请,请点击【索取发票】。
咨信网客服组:【微信客服】
1、浏览或下载可查看了解,请点击【咨信网告知】。
2、下载文件中如有侵权或不适当内容,将立即纠正。
3、如果因为网速或其他原因下载失败请重新下载,重复下载[60天内]不扣币。
4、开具发票登录电脑端申请,请点击【索取发票】。
咨信网客服组:【微信客服】


软件项目综合测试及验收.pptx
















自信AI助手














微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/14603357.html