版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
内部资料,严禁外协人员接触测试部一、二级工程师任职资格培训课程软件测试技术基础测试研究管理部《软件测试技术基础》课程开发小组郑育红、向昌达、李旭成、穆西宏、陈果林、任伟良、戎兵2003年9月2日《软件测试技术基础》培训课程目标掌握软件测试的基础知识掌握白盒测试概念和方法掌握黑盒测试概念和方法《软件测试技术基础》培训目录第一章软件测试基础
第二章白盒测试第三章黑盒测试《软件测试技术基础》培训第一章软件测试基础1.1软件测试的定义1.2软件测试的目的1.3软件测试的一般原则1.4软件测试的方式1.5IPD流程的主要测试活动《软件测试技术基础》培训1.1软件测试的定义1、软件测试是在软件投入运行前对需求、设计和编码的结果进行复查;2、软件测试是根据开发各阶段的需求、设计文档和代码而精心设计的一批用例,利用这些测试用例去运行程序,以及发现程序错误的过程。《软件测试技术基础》培训1.2软件测试的目的发现错误!例如:发现需求、设计和实现的错误《软件测试技术基础》培训1.3软件测试的一般原则
1、尽早地、不断地进行软件测试;2、明确测试输入预置条件和与之对应的预期输出结果;3、避免测试自己编写的程序;4、在测试设计时应充分考虑异常的输入情况;5、充分考虑程序测试中的群集现象,80%的错误集中在20%的程序模块;6、排除测试的随意性;7、对测试结果做全面检查;8、妥善保存测试计划,测试用例,出错统计和最终分析结果;9、所有的测试应该追溯到用户需求;10、测试应该从"小规模"开始,逐步转向"大规模"即渐增式build测试。《软件测试技术基础》培训1.4软件测试的方式
如:针对需求分析、概要设计、详细设计以及编码各阶段所得到的文档的评审,以及对代码的走读和检视等;2、动态测试;执行程序而开展的一项列活动1、静态测试:无需执行程序而开展的一项活动如:针对源代码进行的单元测试、集成测试和系统测试等;《软件测试技术基础》培训1.5IPD流程的主要测试活动TR1TR2TR3TR4TR4aTR5TR6测试需求分析阶段测试方案设计阶段测试用例设计阶段SDV执行阶段SIT执行阶段SVT执行阶段产品分析产品测试需求分析分解分配制定产品总体测试策略(含自动化)特性测试规格分析重分配特性测试设计SDV方案设计SIT方案设计测试策略监控测试用例设计脚本/代码/数据准备环境准备SDV测试执行……SDV测试执行SDV测试报告SVT测试方案写作SIT测试执行SIT测试报告SVT测试用例SVT测试执行Beta测试执行Beta测试方案设计Beta技术方案设计Beta测试管理协调Beta测试用例准备《软件测试技术基础》培训目录第一章软件测试基础第二章白盒测试第三章黑盒测试《软件测试技术基础》培训第二章白盒测试2.1白盒测试的定义2.2程序结构分析2.3逻辑覆盖2.4其他白盒测试方法简单介绍2.5白盒测试的实际应用《软件测试技术基础》培训2.1白盒测试的定义
白盒测试是根据被测程序的内部结构设计测试用例的一种测试方法.
输入输出if(…)…else…被测对象《软件测试技术基础》培训2.2程序结构分析
程序的结构形式是白盒测试的主要依据。程序结构分析包括:
(1)控制流分析(2)数据流分析(3)信息流分析《软件测试技术基础》培训2.2.1控制流分析
通过控制流图矩阵来表示程序的控制流程图。分析程序的控制流是为了使编写出的程序有好的结构。对于程序结构提出以下4点基本要求,这些要求是写出的程序不应包含:①转向并不存在的标号;②没有用的语句标号;③从程序入口进入后无法达到的语句;不能达到停机语句的语句。目前主要是通过编译器和程序分析工具来实现程序控制流分析。《软件测试技术基础》培训2.2.2数据流分析数据流分析是分析程序中未定义变量的使用和未曾使用的变量定义。目前通过编译器或程序分析工具通过数据流分析利用数据流分析的结果可以进行代码编译优化。《软件测试技术基础》培训2.2.3信息流分析目前信息流分析主要用在验证程序变量间信息的传输遵循保密要求。信息流分析主要分析输出值跟输入值之间的影响关系。程序的信息流关系,为软件开发和确认提供了十分有益的工具《软件测试技术基础》培训2.3逻辑覆盖2.3.1语句覆盖2.3.2判定覆盖2.3.3条件覆盖2.3.4判定-条件覆盖2.3.5路径覆盖《软件测试技术基础》培训2.3逻辑覆盖(续)被测试的程序:IF((A>1)AND(B=0))THENX=X/AIF((A=2)OR(X>1))THENX=X+1
该程序共有4条语句,其中2条条件判断语句,2条赋值语句。《软件测试技术基础》培训2.3.1语句覆盖
何为语句覆盖?
——设计若干个测试用例,然后运行被测程序,使程序中的每个可执行语句至少执行一次。该程序段的语句覆盖测试用例为那些?测试用例编号ABX1???2???3???《软件测试技术基础》培训2.3.2判定覆盖
何为判定覆盖?
——设计若干测试用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少经历一次,即判断的真假值均曾被满足。又称分支覆盖。该程序段的判定覆盖测试用例为那些?测试用例编号ABX1???2???3???《软件测试技术基础》培训2.3.3条件覆盖
何为条件覆盖?
——设计若干测试用例,执行被测程序以后,要使每个判断中每个条件的可能取值至少满足一次。该程序段的条件覆盖测试用例为那些?测试用例编号ABX1???2???3???《软件测试技术基础》培训2.3.4判定-条件覆盖
何为判定-条件覆盖?
——设计足够的测试用例,使得判断中每个条件的所有可能至少出现一次,并且每个判断本身的判定结果也至少出现一次。该程序段的判定-条件覆盖测试用例为那些?测试用例编号ABX1???2???3???《软件测试技术基础》培训2.3.5路径覆盖
何为路径覆盖?
——设计足够多测试用例,要求覆盖程序中所有可能的路径。该程序段的路径覆盖测试用例为那些?测试用例编号ABX1???2???3???《软件测试技术基础》培训2.4其他白盒测试方法简介
程序插装(2)域测试(3)符号测试(4)Z路径覆盖(5)程序变异《软件测试技术基础》培训2.4.1程序插装往被测程序中插入操作来实现测试。程序插装技术能够按用户的要求,获取程序的各种执行过程中的信息,成为测试工作的有效手段。在程序中的特定部位插入某些用以判断变量特性的语句,使得程序执行中这些语句得以证实,从而使程序的运行特性得到证实。我们把插入的这些语句称为断言。使用断言就是程序插装的一种有效方法《软件测试技术基础》培训2.4.2域测试域测试的“域”是指程序的输入空间。输入空间又可分为不同的子空间,每一子空间对应一种不同的计算。子空间的划分是由程序中分支语句中的谓词决定的。域测试正是在分析输入域的基础上,选择适当的测试点以后进行测试的。域测试有两个致命的弱点,一是为进行域测试对程序提出的限制过多,二是当程序存在很多路径时,所需的测试点也就很多。《软件测试技术基础》培训2.4.3符号测试符号测试的基本思想是允许程序的输入不仅仅是具体的数值数据,而且包括符号值,这一方法也是因此而得名。普通测试执行的是算术运算,符号测试则是执行代数运算。因此符号测试可以认为是普通测试的一个自然的扩充。《软件测试技术基础》培训2.4.4
Z路径覆盖完成路径测试的理想情况是做到路径覆盖,但路径太多。因此对循环机制进行简化,从而极大地减少路径的数量,使得覆盖这些有限的路径成为可能。我们称简化循环意义下的路径覆盖为Z路径覆盖。对于程序中的所有路径可以用路径树来表示设法遍历了所有的叶结点,那就得到了所有的路径,生成每个路径的测试用例,就可以做到Z路径覆盖测试。《软件测试技术基础》培训2.4.5程序变异程序变异方法与前面提到的结构测试和功能测试都不一样,它是一种错误驱动测试。错误驱动测试方法,是指该方法是针对某类特定程序错误的。错误驱动测试主要有两种,即程序强变异和程序弱变异。《软件测试技术基础》培训2.5白盒测试的实际应用应用于单元测试要求最少达到语句覆盖对于比较核心的模块做到判定-条件覆盖利用覆盖准则来设计用例程序插装使用最多《软件测试技术基础》培训目录第一章软件测试基础第二章白盒测试第三章黑盒测试
《软件测试技术基础》培训第三章黑盒测试3.1黑盒测试定义3.2常见的黑盒测试方法3.3等价类方法演练3.4其他黑盒测试方法3.5黑盒测试方法的实际应用《软件测试技术基础》培训3.1黑盒测试定义黑盒测试又称为功能测试、数据驱动测试或基于规格说明的测试黑盒测试相对于白盒测试而言,并不关心被测对象的内部实现,而是针对被测对象提供的外部功能与规格出发来设计测试用例进行测试被测对象输入输出《软件测试技术基础》培训3.2常见的黑盒测试方法3.2.1等价类划分3.2.2边界值分析3.2.3错误推测3.2.4因果图3.2.5判定表3.2.6正交分析3.2.7功能图《软件测试技术基础》培训3.2.1等价类划分定义:
特点:
将全部输入数据合理划分为若干等价类,在每一个等价类中选取一个数据作为测试的输入条件,这样所取得的测试效果与选择等价类内所有数据作为测试的输入所取的测试效果是一样的典型、常用测试效率得到提高《软件测试技术基础》培训3.2.1等价类划分(续)等价类划分方法应用介绍第一步:划分等价类第二步:边界值分析(可选步骤)第三步:多个输入间关系分析(可选步骤)第四步:生成测试用例《软件测试技术基础》培训3.2.1等价类划分(续)-应用介绍划分等价类有效等价类与无效等价类等价类划分原则等价类划分表确定测试用例《软件测试技术基础》培训3.2.1等价类划分(续)-实例(三角形判断)《软件测试技术基础》培训3.2.1等价类划分(续)-实例(用户ID与密码)
某网管用户登录界面要求输入用户ID和密码才能登录,对该用户登录功能进行测试。用户ID、密码要求不能为空。用户ID为4位数字,不能以“0”开头;用户密码为6位数字,不能以“0”开头。演练要求:划分等价类生成测试用例《软件测试技术基础》培训3.2.2边界值分析定义:
特点:
经验告诉我们,大量的错误是发生在输入或输出范围的边界上,边界值分析就是在划分的等价类区域的边界及其附近进行测试数据的选取典型、常用测试方法经常会和等价类划分方法配合使用《软件测试技术基础》培训3.2.2边界值分析(续)边界值分析方法应用介绍第一步:确定输入的范围第二步:确定范围的边界值第三步:多个输入关系分析(可选步骤)第四步:生成测试用例《软件测试技术基础》培训3.2.2边界值分析(续)输入满足以下条件时可以运用边界值分析方法进行分析:输入条件规定了一个值的范围输入条件规定了值的个数输入条件规定了值的先后顺序边界的定义:上点:域边界上的点离点:离上点最近的点内点:域内的任意点《软件测试技术基础》培训3.2.2边界值分析(续)-应用实例《软件测试技术基础》培训3.2.3错误推测法定义:
错误推测法是基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的进行测试的方法。特点:分析过程简单、可操作性强测试用例的设计更加具有针对性、有效性《软件测试技术基础》培训3.2.3错误推测法(续)错误推测法应用介绍第一步:确定被测对象范围第二步:在测试经验库中查找相关内容第三步:根据测试经验库中查找出的相关内容设计测试用例《软件测试技术基础》培训3.2.3错误推测法(续)-应用实例例如在进行某产品某版本测试用例设计时首先对该产品或其他同类型产品的网上问题情况进行分析,得到一个网上问题分析报告。分析报告中有对于网上问题出现的位置、几率、严重程度、原因进行的分析,那么在进行该版本测试用例设计时就可根据该报告中分析的结论有针对性的设计相应的测试用例。《软件测试技术基础》培训3.2.4因果图分析方法定义:
特点:
考虑了多个输入之间的组合情况等价类划分和边界值分析着重考虑了对于一个输入条件的分析,但是他们都没有考虑到如果存在多个输入条件时的他们之间的组合与联系。因果图方法运用图的方法对多个输入之间的组合以及输入、输出之间的因果关系进行了分析。《软件测试技术基础》培训3.2.4因果图分析方法(续)因果图方法应用介绍第一步:确定被测对象的输入与输出第二步:通过语义分析给出输入与输出之间的因果关系第三步:根据因果关系分析画出因果图第四步:将因果图转换为判定表第五步:根据判定表设计测试用例《软件测试技术基础》培训3.2.4因果图分析方法(续)因果图分析相关逻辑符号:《软件测试技术基础》培训3.2.4因果图分析方法(续)因果图分析相关约束符号:《软件测试技术基础》培训3.2.4因果图分析方法(续)-应用实例《软件测试技术基础》培训3.2.5判定表方法定义:
采用表格的形式,列出所有条件和所有结果的组合,做到无遗漏的覆盖。特点:1、判定表适合于条件项各自独立,互不影响的情况。
2、判定表使用的技巧在于,把条件项划分清晰,对条件进行合理得组合,使得到得规则数最小。《软件测试技术基础》培训3.2.5判定表方法(续)判定表分析步骤。第一步:确定规则个数。假如有n个条件,每个条件有两个取值,就有2的n次方个规则第二步:列出所有的条件桩和动作桩第三步:填入条件项第四步:填入动作项。得到初始判定表第五步:简化。合并相似规则和动作《软件测试技术基础》培训3.2.5判定表方法(续)条件桩(ConditionStub):列出了问题得所有条件,通常认为列出得条件的次序无关紧要。动作桩(ActionStub):列出了问题规定可能采取的操作,这些操作的排列顺序没有约束。条件项(ConditionEntry):列出针对它左列条件的取值,在所有可能情况下的真假值。动作项(ActionEntry):列出在条件项的各种取值情况下应该采取的动作。规则:任何一个条件组合的特定取值及其相应要执行的操作。在判定表中贯穿条件项和动作项的一列就是一条规则。显然,判定表中列出多少组条件取值,也就有多少条规则,即条件项和动作项有多少列。
《软件测试技术基础》培训3.2.6正交试验设计方法定义:
正交试验设计法,是从大量的试验点中选取适量的有代表性的点,应用依据伽罗华理论推导出的正交表,合理地安排实验的一种科学的实验设计方法。利用这种方法,可使所有的因子和水平在试验中均匀地分配与搭配,均匀地有规律地变化。特点:采用正交实验设计方法进行测试用例的设计能够有效地、合理地减少测试的工时与费用。兼顾测试成本与测试充分性的均衡,提高测试效率。《软件测试技术基础》培训3.2.6正交试验设计方法(续)正
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广东佛山市南海区丹灶中心幼儿园招聘1人备考题库含答案详解(能力提升)
- 人教版六年级下册数学计算过关练习
- 2026浙江金华浦江县中医院招聘编外人员6人备考题库附答案详解(a卷)
- 2026改版湘教版三年级上册科学复习提纲
- 2026广东佛山市高明发展投资建设集团有限公司招聘第三期工作人员2人备考题库含答案详解(新)
- 2026陕西省宝鸡市岐山县中医医院招聘2人备考题库及完整答案详解1套
- 2026四川德阳市江南高级中学教师招聘17人备考题库及一套完整答案详解
- 2026年万科地产项目销售案场接待和销售流程页
- 2026江苏省淮安市市属国有企业春季校园招聘8人备考题库及答案详解(有一套)
- 2026山东铁路投资控股集团有限公司招聘45人备考题库有答案详解
- 2026深圳中考历史考前冲刺卷含答案
- 2026哈尔滨兰兴资产运营管理有限公司公开招聘备考题库(含答案详解)
- 卫生院信用管理工作制度
- 2026年新疆投资发展集团有限责任公司校园招聘笔试备考试题及答案解析
- 2026四川省现代种业发展集团成都农业开发有限公司社会化招聘拟人员笔试历年典型考点题库附带答案详解
- 物流公司运输调度工作流程
- 血液内科三基三严考试题库及答案
- 【《中国智能手机出口现状分析概述》3000字】
- DB43-T 3447-2025 烟花爆竹生产企业对标改造技术指南
- 电力系统概述课件
- 道路桥梁建设进展调研报告
评论
0/150
提交评论