版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四章测试工程测试的基本概念及测试工程概述各个测试阶段的作业内容及流程测试方法
软件测试背景软件是人编的—所以不完美软件错误原因交流不够软件复杂性程序设计错误需求变化时间压力代码文档贫乏软件开发工具错误软件测试背景软件产品最大的成本是检测软件错误,修正软件错误的成本。很多软件开发企业花费在测试上的费用是总项目费用的,
30%~40%,甚至更多;类似飞行控制等软件的测试费用更是占项目其他费用的三至五倍。软件测试行业在国内的发展,远比软件开发甚至项目管理缓慢。软件测试的定义软件测试是为了发现缺陷而执行程序的过程测试是为了证明程序中有错误,而不是证明程序中无错误一个好的测试用例指的是它可能发现至今尚未发现的缺陷一次成功的测试指的是发现了新的软件缺陷的测试注:测试以查找错误为中心,而不是为了演示软件的正确功能。但并不是说查找不出错误的测试就是没有价值的。软件测试的目的确认软件的质量,一方面是确认软件做了你所期望的事情,另一方面确认软件以正确的方式来做了这个事件提供信息,比如提供给开发人员或程序反馈组处,为风险评估所准备的信息软件测试不仅是在测试软件产品本身,而且还包括软件开发的过程,即保证整个软件开发过程是高质量的。软件测试的目的基于不同的立场,存在着两种完全不同的测试目的。从用户的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可接受该产品。从软件开发者的角度出发,则希望测试成为表明软件产品中不存在错误的过程,验证该软件已正确地实现了用户的要求,确立人们对软件质量的信心。测试观点软件测试不等于程序测试软件测试应贯穿于软件定义与开发的整个期间;据美国一家公司统计,查出的软件错误中,属于需求分析和软件设计的错误约占64%,属于程序编写的错误仅占36%。程序编写的许多错误是“先天的”。软件测试的原则1.应当把“尽早地和不断地进行软件测试”作为软件开发者的座右铭。2.测试用例应由测试输入数据和对应的预期输出结果这两部分组成。3.程序员应避免检查自己的程序。4.在设计测试用例时,应包括合理的输入条件和不合理的输入条件。5.充分注意测试中的群集现象。
经验表明,测试后程序中残存的错误数目与该程序中已发现的错误数目成正比。6.严格执行测试计划,排除测试的随意性。7.应当对每一个测试结果做全面检查。8.妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。软件测试的原则4.1测试工程概要通过测试工程对软件的测试,验证软件的有效性,发现并修补软件系统的缺陷,以提高软件质量,确保开发出用户满意的软件。4.1测试工程概要测试是一个反复的过程面向功能的系统和面向对象的系统的测试方法是不一样的4.1测试工程概要测试工程在软件生命周期过程中处于下流工程的位置测试工程的主要测试阶段:单元测试、组合测试、系统测试、运行测试。开发工程与测试阶段需求分析概要设计(外部设计)详细设计(内部设计)程序设计运行测试系统测试组合测试单元测试对应工程时间流程序编制开发工程与测试阶段需求分析概要设计(外部设计)详细设计(内部设计)程序设计运行测试系统测试组合测试单元测试对应工程时间流程序编制对程序的每个模块进行测试,检验每个模块是否完成各自的功能开发工程与测试阶段需求分析概要设计(外部设计)详细设计(内部设计)程序设计运行测试系统测试组合测试单元测试对应工程时间流程序编制把测试过的程序模块组装起来进行功能测试,检验设计阶段对系统的各个功能模块及接口的设计是否正确开发工程与测试阶段需求分析概要设计(外部设计)详细设计(内部设计)程序设计运行测试系统测试组合测试单元测试对应工程时间流程序编制根据软件的需求定义和设计检验软件的功能和性能是否满足要求开发工程与测试阶段需求分析概要设计(外部设计)详细设计(内部设计)程序设计运行测试系统测试组合测试单元测试对应工程时间流程序编制把经过系统测试的软件系统纳入用户的实际运行环境中,将软件、硬件和实际使用的数据等其他因素综合起来进行全系统的运行检验4.2各个测试阶段的作业内容及流程单元测试 前提:已通过编译程序检查并且改正所有语法错误。 依据:程序设计书 目的:检测确认程序模块的处理逻辑是否正确,要求的功能是否实现。单元测试作业内容及流程测试实施测试准备1.准备测试工具2.配置测试环境3.准备测试数据1.按PCL测试程序2.填写测试记录(B票)1.按程序设计书检查测试结果2.填写检查记录(B票)测试资料准备测试环境准备1.确认测试方法2.确定采用的问题记录表(B票)格式3.作成单元测试检测清单(PCL:ProgramCheckList)测试程序确认测试结果修正程序、设计书再测试按检查结果修正程序、设计书填写修正记录(B票、设计书变更记录表)单元测试报告1.根据PCL、B票、测试结果等确认测试质量2.判断是否进入组合测试确认测试结果4.2各个测试阶段的作业内容及流程从哪几个方面进行单元测试?(1)程序的逻辑处理测试(2)程序的输入/输出测试(3)边界条件测试(4)异常处理测试4.2各个测试阶段的作业内容及流程组合测试 目的:将各个程序模块组装起来进行程序之间的连接测试,确认系统的各个功能模块及模块之间的接口是否正确,是否实现详细设计书的功能要求,详细设计是否符合业务处理的要求。注:组合测试不仅找出程序缺陷,同时还要找出设计缺陷。组合测试作业内容及流程测试实施测试准备1.准备测试工具2.配置测试环境3.准备测试数据1.按测试流程和CCL测试程序2.填写测试记录(B票)1.按详细设计书检查测试结果2.填写检查记录(B票)测试资料准备测试环境准备1.制定测试方针及流程2.确定采用的问题记录表(B票)、设计变更记录表格式3.作成组合测试检测清单(CCL:CombiningCheckList)测试程序确认测试结果修正程序、设计书再测试1.按检查结果修正程序、设计书2.填写修正记录(B票、设计书变更记录表)3、修正设计书1.按测试方针和CCL再测试程序2.填写测试记录(B票)组合测试报告1.根据CCL、B票、测试结果等确认测试质量2.判断是否进入系统测试确认测试结果4.2各个测试阶段的作业内容及流程组合测试验证哪几方面的内容?(1)数据的输入、窗体之间的迁移、表格的打印输出是否正确。(2)文件、数据库的处理是否合理、正确。(3)功能模块之间的信息、数据的传递、通信接口的处理等是否正确。(4)功能模块之间接口发生的异常处理是否正确,如与外部设备的接口、嵌入软件等的接口发生异常时的处理。4.2各个测试阶段的作业内容及流程系统测试 目的:验证软件系统的功能和性能及其他特性是否与用户期待的要求一致。(即验证软件的可靠性和有效性。) 依据:需求定义和概要设计书系统测试作业内容及流程测试实施测试准备1.准备测试工具2.检查用户配置的测试环境3.获取用户的实际数据1.按测试流程和SCL测试系统2.填写测试记录(B票)1.按概要设计书、需求定义检查测试结果2.填写检查记录(B票)测试资料准备测试环境准备1.制定测试方针和测试流程2.确定采用的问题记录表(B票)、设计变更记录表格式3.作成系统测试检测清单(SCL:SystemCheckList)测试系统确认测试结果修正程序、设计书再测试1.按检查结果修正程序、设计书2.填写修正记录(B票、设计书变更记录)1.按测试流程和SCL再测试系统2.填写测试记录(B票)系统测试报告1.根据SCL、B票、测试结果等确认软件系统质量2.判断是否能进入运行测试确认测试结果4.2各个测试阶段的作业内容及流程运行测试 (又称应用测试或验收测试) 目的:由用户确定软件系统是否满足需求定义的要求。运行测试的主要作业内容及流程测试实施测试准备1.按用户的实机运行环境准备培训环境和培训用数据2.确认培训人员1.按测试流程测试系统2.填写验收记录1.按概要设计书、需求定义检查测试结果2.填写验收记录培训资料准备培训环境准备1.制定测试方针和测试流程2.确定采用的验收记录表格式3.编制系统运行手册、系统操作手册等培训资料测试系统确认测试结果评审改进方案改进系统1.按用户提出改进意见制定改进方案2.组织相关人员对改进方案进行评审1.按经过评审的改进方案改进系统2.检查改进后系统运行结果系统改进测试报告1.根据改进后的系统运行检查结果确认软件系统质量2.判断是否能正式运行测试环境准备1.检查用户的实机运行环境2.准备用户的实际应用数据确认测试结果4.3测试方法软件测试的策略和方法静态测试方法动态测试方法人工测试方法计算机辅助静态分析方法白盒测试方法黑盒测试方法4.3测试方法从测试的手段分类,常用的测试方法有白盒测试和黑盒测试;从测试的推进方法分类,又有自顶向下测试和自底向上测试。4.3测试方法注: 选用少量最有效的测试数据,达到尽可能完备的测试效果是设计测试数据的关键。4.3.1白盒测试
前提是可以把程序看成装在一个透明的白盒子里,也就是完全了解程序的结构和处理过程。这种方法按照程序内部的逻辑测试程序,检验程序中的每条通路是否都能按预定要求正确工作。白盒测试又称为结构测试。白盒测试的核心:根据程序内部结构设计测试用例。白盒测试又分为逻辑覆盖测试和路径测试。
逻辑覆盖测试法:通常用流程图来设计测试用例,它考察的重点是图中的判定框。因为这些判定若不是与选择结构有关,就是与循环结构有关。逻辑覆盖测试包括:语句覆盖、分支(判定)覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖。路径测试法:主要测试程序的执行路径。路径测试包括:点覆盖、边覆盖、路径覆盖。
4.3.1白盒测试—设计测试用例4.3.1白盒测试—设计测试用例主要目的:
提高测试覆盖率,是覆盖性较高的测试方法,能保证在测试过程中所有的语句都至少执行过一遍。4.3.1白盒测试—设计测试用例1)语句覆盖(又称命令覆盖) 使程序中每个语句至少执行一次4.3.1白盒测试—设计测试用例4.3.1白盒测试—设计测试用例只需设计一个测试用例:输入数据:A=2,B=0,X=4即达到了语句覆盖;语句覆盖是最弱的逻辑覆盖4.3.1白盒测试—设计测试用例A=2,B=0,X=44.3.1白盒测试—设计测试用例(2)判定覆盖(分支覆盖)
使每个判定的真假分支都至少执行一次4.3.1白盒测试—设计测试用例4.3.1白盒测试—设计测试用例例:可设计两组测试用例:A=3,B=0,X=3可覆盖sacbd
A=2,B=1,X=1可覆盖sabed
两组测试用例可覆盖所有判定的真假分支判定覆盖仍是弱的逻辑覆盖4.3.1白盒测试—设计测试用例A=3,B=0,X=3可覆盖sacbd
A=2,B=1,X=1可覆盖sabed4.3.1白盒测试—设计测试用例(3)条件覆盖
使判定表达式的每个条件都取到各种可能的结果4.3.1白盒测试—设计测试用例4.3.1白盒测试—设计测试用例例中有两个判定表达式,每个表达式有两个条件,为了做到条件覆盖,应该选取测试数据使得 在a点有下述结果出现:
A>1,A<=1,B=0,B!=0
在b点有下述各种结果出现:
A=2,A!=2,X>1,X<=1
4.3.1白盒测试—设计测试用例只要使用下面两组测试数据就可以达到上述覆盖标准:
I.A=2,B=0,X=4覆盖sacbed II.A=1,B=1,X=1覆盖sabd4.3.1白盒测试—设计测试用例I.A=2,B=0,X=4覆盖sacbedII.A=1,B=1,X=1覆盖sabd4.3.1白盒测试—设计测试用例条件覆盖通常比判定覆盖强,因为这使判定表达式中每个条件都取到了两个不同结果,判定覆盖却只关心整个表达式的值。上面两组测试数据也同时满足判定覆盖标准。但是,也可能有相反的情况:虽然每个条件都取到了两个不同的结果,判定表达式却始终只取一个值。4.3.1白盒测试—设计测试用例如:
I.A=2,B=0,X=1覆盖sacbed II.A=1,B=1,X=2覆盖sabed
只满足条件覆盖标准,不满足判定覆盖标准。 所以说条件覆盖与判定覆盖没有包含关系4.3.1白盒测试—设计测试用例I.A=2,B=0,X=1覆盖sacbedII.A=1,B=1,X=2覆盖sabed4.3.1白盒测试—设计测试用例(4)判定/条件覆盖 选取足够多的测试数据,使得判定表达式中的每个条件都取到各种可能的值,而且每个判定表达式也都取到各种可能的结果。4.3.1白盒测试—设计测试用例I.A=2,B=0,X=4覆盖sacbedII.A=1,B=1,X=1覆盖sabd4.3.1白盒测试—设计测试用例(5)条件组合覆盖(又称为复数条件覆盖)
使得每个判断的所有可能的条件取值组合至少执行一次4.3.1白盒测试—设计测试用例4.3.1白盒测试—设计测试用例所有可能的条件取值组合
A>1,B=0A>1,B!=0A<=1,B=0A<=1,B≠0A=2,X>1A=2,X<=1A!=2,X>1A!=2,X<=14.3.1白盒测试—设计测试用例下面的四组测试数据可使上面列出的八种条件组合每种至少出现一次:I.A=2,B=0,X=4针对1,5两种组合,覆盖sacbedII.A=2,B=1,X=1针对2,6两种组合,覆盖sabedIII.A=1,B=0,X=2针对3,7两种组合,覆盖sabedIV.A=1,B=1,X=1针对4,8两种组合,覆盖sabd4.3.1白盒测试—设计测试用例I.A=2,B=0,X=4针对1,5两种组合,覆盖sacbed4.3.1白盒测试—设计测试用例II.A=2,B=1,X=1针对2,6两种组合,覆盖sabed4.3.1白盒测试—设计测试用例III.A=1,B=0,X=2针对3,7两种组合,覆盖sabed4.3.1白盒测试—设计测试用例IV.A=1,B=1,X=1针对4,8两种组合,覆盖sabd路径测试路径测试着眼于程序执行路径的测试。首先需要将流程图程序图。程序图实际上是一种简化了的流程图。在路径测试中,程序图是用来考察测试路径的有用工具。
4.3.1白盒测试—设计测试用例路径测试流程图中各种不同形状的框,在程序图中都被简化为用圆圈表示的一个个结点。由于程序图中保留了控制流的全部轨迹,舍弃了各框的细节,因而画面简洁,路径清晰,用它来验证各种测试数据对程序执行路径的覆盖情况,比流程图更加方便。
4.3.1白盒测试—设计测试用例4.3.1白盒测试—设计测试用例从对程序路径的覆盖程度分析,提出下述一些主要的逻辑覆盖标准:(6)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 部编版四年级上册语文10.《爬山虎的脚》同步练习
- 新经济时代图书馆的管理创新分析
- 2026年九年级中考语文课外文言文阅读题汇集(一)及答案
- 2026年高考甲卷理综数学题库试题附答案完整版
- 2026边检专业真题卷附答案
- 2026年高考地理全国一卷题考点及完整答案
- 2025年绵阳育才中学初一入学数学分班考试真题含答案
- 人邮版(2021)教学设计中职中职专业课汽车制造与维修类66 装备制造大类
- 第二十二课 音乐与电影电视(三)教学设计高中音乐人教版必修 艺术欣赏-人教版
- 第2节 电解质的电离 离子反应教学设计高中化学鲁科版2019必修第一册-鲁科版2019
- 癫痫病人的护理业务学习
- 广西壮族三月三主题作文800字
- 2024届高考英语语法填空模拟题-传统文化篇(含答案)
- RTK使用原理及应用
- 身份证籍贯对照表(自动)
- 颅内高压患者的监护
- 铁道概论高职PPT完整全套教学课件
- 医生进修申请表(经典版)
- 100+华为云高层主打胶片-华为云+智能+见未来
- 第六章消费者学习与记忆对消费者行为的影响
- 医院麻醉精神药品的管理与使用
评论
0/150
提交评论