功能测试方法简介
边界值分析法
边界值分析也是一种黑盒测试方法,是对等价类划分方 法的补充。
人们从长期的测试工作经验得知,大量的错误是发生在 输入或输出范围的边界上,而不是在输入范围的内部。 因此针对各种边界情况设计`测试用例,可以查出更多的 错误。
这里所说的边界是指,相当于输入等价类和输出等价类 而言,稍高于其边界值及稍低于其边界值的一些特定情 况。
3
设计说明书
-----------------------------------------
设计员: 我要让软件做什么?
理解正确性 编码正确性
功能测试的基本方法
功能测试的基本方法是构造一些合理输入(在需求范围 之内),检查输出是否与期望的相同。如果两者不一致 ,即表明功能有误。也有例外的情况,如《需求规格说 明书》中的某个功能写错了,而实际上软件的功能却是 正确的,这时要更改的是《需求规格说明书》。
边界值分析法
数据类型:数值、字符、位置、数量、速度、 地址、尺寸等,都会包含确定的边界。
应考虑的特征:第一个/最后一个、开始/完成、 空/满、最慢/最快、相邻/最远、最小值/最大值、超 过/在内、最短/最长、最早/最迟、最高/最低。这些 都是可能出现的边界条件。
根据边界来选择等价分配中包含的数据。然而 ,仅仅测试边界线上的数据点往往不够充分。提出 边界条件时,一定要测试临近边界的合法数据,即 测试最后一个可能合法的数据,以及刚超过边界的 非法数据。
第6页
(1)划分等价类-----划分等价类的原则
4) 如果规定了输入数据的一组值,而且程序要对每个输入 值分别进行处理。这时可为每一个输入值确立一个有效等 价类,此外针对这组值确立一个无效等价类,它是所有不 允许的输入值的集合。
5) 如果规定了输入数据必须遵守的规则,则可以确立一个 有效等价类(符合规则)和若干个无效等价类(从不同角 度违反规则)。
一 功能测试方法概述 二 主要功能测试方法介绍 三 各种测试方法综合策略
第1页
功能测试的思考
用户要求
----------------------------
用户: 我要什么?
理解正确性 表达正确性
1
5
相符吗?
运行结果
--------------------------------------------
因果图法
因果图的适用范围: 如果在测试时必须考虑输入条件的各种组合,可使
用一种适合于描述对于多种条件的组合,相应产生多个 动作的形式来设计测试用例,这就需要利用因果图。
因果图法-----生成测试用例的基本步骤
用因果图生成测试用例的基本步骤如下:
1) 分析软件规格说明描述中,哪些是原因(即输入条件或输入 条件的等价类),哪些是结果(即输出条件),并给每个原因 和结果赋予一个标识符。
等价类的划分有两种不同的情况: ①有效等价类:是指对于程序的规格说明来说,是合理的
,有意义的输入数据构成的集合。 ②无效等价类:是指对于程序的规格说明来说,是不合理
的,无意义的输入数据构成的集合。
在设计测试用例时,要同时Hale Waihona Puke 虑有效等价类和无效 等价类的设计。
第5页
(1)划分等价类-----划分等价类的原则
第 10 页
错误推断法
人们也可以靠经验和直觉推测程序中可能存在的 各种错误,从而有针对性地编写检查这些错误的例子 。这就是错误推测法。
错误推测法的基本想法是:列举出程序中所有可 能有的错误和容易发生错误的特殊情况,根据它们选 择测试用例。例如:输入数据和输出数据为0的情况、 输入表格为空格或输入表格只有一行等这些都是容易 发生错误的情况,可选择这些情况下的例子作为测试 用例。
功能测试看起来比较简单,只要看得懂《需求规格说明 书》,谁都会做。难点在于如何构造有效的输入。由于 输入空间通常是无限的,穷举测试显然行不通。那么随 便输入一些东西,碰运气行不行?
功能测试有两种比较好的测试方法:等价划分法和边界 值分析法。
第3页
等价划分法
等价类划分是一种典型的黑盒测试方法,使用这一 方法时,完全不考虑程序的内部结构,只依据程序 的规格说明来设计测试用例。
第 11 页
“探索或开放”型的测试:不是按部就班的按照一个 又一个正式的测试用例来进行,也不局限于测试用例 特定的步骤。这种测试是测试人员在理解该软件功能 的基础上运用灵活多样的想象力和创造力去模拟用户 的需求来使用该软件的多种功能。通常涉及很多的测 试用例或者通过更复杂的步骤来使用该软件。
第 12 页
计算机:
程序运行得到的结果
运行正确性
4
输入正确性
需求说明书
------------------------------------
分析员: 我可以提供什么?
2
理解正确性 设计正确性 表达正确性
源程序
--------------------------------------------------
程序员: 我要让计算机怎么做?
划分等价类有如下五个原则: 1) 如果输入条件规定了取值范围,或值的个数,则可以确立
一个有效等价类和两个无效等价类。 2) 如果输入条件规定了输入值的集合,或者是规定了“必须
如何”的条件,这时可确立一个有效等价类和一个无效 等价类。 3) 如果输入条件是一个布尔量,则可以确定一个有效等价类 和一个无效等价类。
等价类划分方法把所有可能的输入数据,即程序的 输入域划分成若干部分,然后从每一部分中选取少 数有代表性的数据做为测试用例。
使用这一方法设计测试用例要经历划分等价类(列 出等价类表)和选取测试用例两步。
第4页
(1)划分等价类
等价类是指某个输入域的子集合。在该子集合中,各个 输入数据对于揭露程序中的错误都是等效的。测试某等 价类的代表值就等价于对这一类其他值的测试。
第7页
(2)确立测试用例
确立了等价类之后,建立等价类表,列出所有划 分出的等价类。
再从划分出的等价类中按以下原则选择测试用例: 1)为每一个等价类规定一个唯一编号; 2)设计一个新的测试用例,使其尽可能多地覆盖尚未被 覆盖的有效等价类,重复这一步,直到所有的有效等价 类都被覆盖为止; 3)设计一个新的测试用例,使其仅覆盖一个尚未被覆盖 的无效等价类,重复这一步,直到所有的无效等价类都 被覆盖为止。