边界值法分析法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例: • 如果输入值的有效范围是0-100的整数,那么应针对 0,100设计测试用例,还应选取-1,1,99,101设计 测试用例。
2.2 边界值分析法 边界值分析原则
(2) 如果输入条件规定了输入值的数量, 则应针对输入数量的最小值、输入数量 的最大值、以及比最小数量少一个,比 最大数量多一个的情况设计测试用例。
• 要求采用边界值分析法设计测试用例。
练习2:
成绩评定
某考试共有50道题,每题2分,成绩评定 系统根据答对题目的数量给出成绩及等级(合 格:≥60,优秀:≥80分)。 • 要求采用边界值分析法为该成绩评定系统的输 入设计测试用例。
2.2 边界值分析法
• 边界值的类型
• • • • • 数值 字符 位置 数量 重量
<xmin-,ynom>; <xmin,ynom>; <xmin+,ynom>; <xmax-,ynom>; <xmax,ynom>; <xmax+,ynom>;
<xnom,ymin->; <xnom,ymin>; <xnom,ymin+>; <xnom,ymax->; <xnom,ymax>; <xnom,ymax+>
<xnom,ynom>;
练习2:
有二元函数f(x,y),其中x∈[1,12], y∈[1,31]。 则采用边界值分析法设计测试用例
2.2 边界值分析法
有函数f(x,y,z),其中x∈[1900,2100], y∈[1,12],z∈[1,31]的。请写出该函数 采用基本边界值分析法设计的测试用例。
a b X 有两个输入变量的程序F的边界 值分析测试用例
Y
c
d
min:最小值 max: 最大值 nom: 值域里的任意值
2.2 边界值分析法
类型二:健壮性测试
边界值分析测试的一种扩展,需 要考虑采用一个略超过最大值 (max+)及略小于最小值(min-)的 取值。
Y
c
d a b
X
有两个输入变量的程序F的健壮性测试用例
•
再如一程序属于情报检索系统,要求每次"最少显示1 条、最多显示4条情报摘要",我们应考虑的测试用例 包括1和4,还应包括0、2和3、5等。
2.2 边界值分析法 边界值分析原则
(4)如果程序的规格说明给出的输入域或输出 域是有序集合,则应选取集合的第一个元素 和最后一个元素作为测试用例。
(5)如果程序中使用了一个内部数据结构,则 应当选择这个内部数据结构的边界上的值作 为测试用例。
2.黑盒测试技术
本 节 内 容
2.2 边界值分析法
如果在悬崖峭壁旁边可以 自信而安全地行走而不掉下去, 那么在正常情况就应该不会有 什么问题。
2.2 边界值分析法 (Boundary Value Analysis,BVA)
• 长期的测试工作经验告诉 我们,大量的错误是发生 在输入或输出范围的边界 上,而不是发生在输入输 出范围的内部。因此针对 各种边界情况设计测试用 例,可以查出更多的错误。 • 美国陆军对其软件进行了 研究,令人吃惊地发现, 大量缺陷都是边界值缺陷。
• 边界值检验
• 在进行边界值检验时,要考虑这些类型
的以下特征:
• • • • • •
第一个/最后一个 开始/完成 空/满 最慢/最快 最大/最小 相邻/最远
• • • • •
最小值/最大值 超过/在内 最短/最长 最早/最迟 最高/最低
2.2 边界值分析法
• 越界检验的通常做法是简单地对于最大值加1或
• 例1: 学生成绩的取值范围为0~100的整数。 • 进行有效和无效等价类划分
采用等价类划分设计的测试用例
编号 1 2 输入数据 -5 50 输入(用例步骤) 输入学生的成绩小于0 输入学生的成绩在0-100 期望的输出/相应 提示错误信息 输出成绩为50
3
120
输入学生的成绩大于100
提示错误信息
课后预习
以组为单位,熟悉佣金问题(见下页)
要求: 1.分析输入和输出参数及其取值范围 2.分析并写出佣金的计算逻辑
wangchunxiu@ccniit.com
软件测试经典案例:佣金问题
某步枪经销商销售某制造商生产的枪枪 托和枪管,枪栓45美元,枪托30美元,枪管 25美元。经销商每月至少要售出一支完整的 步枪,且经销商每月最多可售出枪栓70支, 枪托80支,枪管90支。每月月底,经销商向 制造商报告当月销售情况,制造商根据销售 量计算经销商应得的佣金。销售额不超过 1000美元的部分,佣金为10%,大于1000且 不超过1800美元的部分为15%,超过1800美 元的部分为20%。
99
100 101
输入学生的成绩大于0,小于100
输入学生的成绩等于100 输入学生的成绩大于100
输出成绩为99
输出成绩为100 提示错误信息
2.2 边界值分析法 边界值分析原则 (1) 如果输入条件规定了一个输入值范围, 则应对范围的边界设计测试用例,同时 针对刚刚越界的情况设计无效输入测试 用例。
• • • • 速度 地点 尺寸 空间
常见边界值如下: 1)对16-bit 的整数而言 32767 和 -32768 是边界 2)屏幕上光标在最左上、最 右下位置 3)报表的第一行和最后一行 4)数组元素的第一个和最后 一个 5)循环的第 0 次、第 1 次 和倒数第 2 次、最后一次
2.2 边界值分析法
2.2 边界值分析法
定义:
• 边界值分析法
对输入或输出的边界值进行测试的一种黑盒测试方法。 通常边界值分析法是作为对等价类划分法的补充,这 种情况下,其测试用例来自等价类的边界。 边界值分析方法和等价类划分法的区别: – BVA不是选择等价类的任何元素,而是选择 等价类边界的测试用例 – BVA不仅注重于输入条件,而且也从输出域 导出测试用例。
•步骤一:确定输入输出条件 •输入:1.a≥0 2.a < 0 •输出:1.返回其正的平方根 2.显示错误信息Error •步骤二:同样划分等价类
参数
求平方根
有效等价类
a≥0
(1)
无效等价类
a < 0
(2)
•步骤三:取边界值作为测试用例 输入 {最小负实数} 输入 {绝对值很小的负数},如-0.01 输入 0 输入 {绝对值很小的正数},如0.01 输入 {最大正实数}
如何设计测试用例?
2.2 边界值分析法
类型一:标准性(一般性)测试
对于一个含有n个变量的程序, 保留其中一个变量,让其余的变量 取正常值,被保留的变量依次取min、 min+、nom、max-、max值,对每个 变量都重复进行。这样,对于一个 有n个变量的程序,边界值分析测试 程序会产生4n+1个测试用例。
例:如果某个输入文件可容纳1-255条记录,那么 应根据0、1、255和256条记录的情况设计测试用例
2.2 边界值分析法 边界值分析原则
(3) 对每个输出条件应用规则1和2。即设计 测试用例使输出值达到边界值及其左右的 值。
• 例:某程序的规格说明要求计算出"每月保险金扣除额 为0至1165.25元",其测试用例可取0.00及1165.25、 还可取-0.01、0.01及1165.24、1165.26等。
很小的数,以及对于最小值减1或很小的数。
第一个减1/最后一个加1 开始减1 /完成加1 空了再减/满了再加 慢上加慢/快上加快 最大加1 /最小减1 最小值减1 /最大值加1
相邻/最远 刚刚超过/刚好在内 短了再短/长了再长 早了更早/晚了更晚 最高加1/最低减1
2.2 边界值分析法
1、假设程序的输入变量为x,x的取值范围为 3 ≤ x ≤5 用边界值分析法为程序设计测试用例。 2、假设程序的输入变量为x、y,变量的取值范 围分别为: 3≤x≤5 2≤y≤4
(6)分析规格说明,找出其它可能的边界条件。
练习1:
•测试计算平方根的函数
--输入:实数 --输出:实数 --规格说明:当输入一个0或比0大的数的时候, 返回其正平方根;当输入一个小于0的数时,显示错误 信息"平方根非法-输入值小于0"并返回0;库函数 Print-Line可以用来输出错误信息。
采用边界值分析法确定边界值
2.2 边界值分析法 使用边界值分析方法设计测试用例
• 采用边界值分析法设计的测试用例又应该是怎样的
呢?
编号 1 2 3
输入数据 -1 0 1
输入(用例步骤) 输入学生的成绩小于0 输入学生的成绩等于0 输入学生的成绩大于0,小于100
期望的输出/相应 提示错误信息 输出成绩为0 输出成绩为1
4
5 6
2.2 边界值分析法
技巧:
边界值分析使用与等价类 划分法相同的划分,只是边界 值分析假定错误更多地存在于 划分的边界上,因此在等价类 的边界上以及两侧的情况设计 测试用例。
练习1:
保险费率的计算
• 保险费率计算百度文库,投保人年龄范围为[1,99]
20 ~ 39岁 年龄 40 ~ 59岁 60岁以上,20岁以下 6点 4点 2点
Foundation of Software Testing
第二部分:软件测试技术
Neusoft
回顾
等价类划分法
◆等价类划分的原则
◆等价类划分法的步骤
带上眼罩测试软件
常用的动态黑盒测试技术 1、等价类划分法 2、边界值分析法 3、错误推测法 4、因果图和决策表 5、场景法 6、功能图法 7、判定表驱动法 8、正交试验设计法
2.2 边界值分析法 使用边界值分析方法设计测试用例
• 首先应确定边界情况 – 通常输入和输出等价类的边界,就是应着重 测试的边界情况。
• 应当选取正好等于,刚刚大于或刚刚小于边界 的值作为测试数据,而不是选取等价类中的典 型值或任意值作为测试数据。
2.2 边界值分析法 使用边界值分析方法设计测试用例
对于一个含有n个变量的程序,保留 其中一个变量,让其余的变量取正 常值,被保留的变量依次取min、 min+、min-,nom、max-、max, max+ 值,对每个变量都重复进行。这样, 对于一个有n个变量的程序,边界值 分析测试程序会产生6n+1个测试用 例。
2.2 边界值分析法
有两个输入变量的程序F的边界值分析 (弱健壮性测试)测试用例:
2.2 边界值分析法 边界值分析原则
(2) 如果输入条件规定了输入值的数量, 则应针对输入数量的最小值、输入数量 的最大值、以及比最小数量少一个,比 最大数量多一个的情况设计测试用例。
• 要求采用边界值分析法设计测试用例。
练习2:
成绩评定
某考试共有50道题,每题2分,成绩评定 系统根据答对题目的数量给出成绩及等级(合 格:≥60,优秀:≥80分)。 • 要求采用边界值分析法为该成绩评定系统的输 入设计测试用例。
2.2 边界值分析法
• 边界值的类型
• • • • • 数值 字符 位置 数量 重量
<xmin-,ynom>; <xmin,ynom>; <xmin+,ynom>; <xmax-,ynom>; <xmax,ynom>; <xmax+,ynom>;
<xnom,ymin->; <xnom,ymin>; <xnom,ymin+>; <xnom,ymax->; <xnom,ymax>; <xnom,ymax+>
<xnom,ynom>;
练习2:
有二元函数f(x,y),其中x∈[1,12], y∈[1,31]。 则采用边界值分析法设计测试用例
2.2 边界值分析法
有函数f(x,y,z),其中x∈[1900,2100], y∈[1,12],z∈[1,31]的。请写出该函数 采用基本边界值分析法设计的测试用例。
a b X 有两个输入变量的程序F的边界 值分析测试用例
Y
c
d
min:最小值 max: 最大值 nom: 值域里的任意值
2.2 边界值分析法
类型二:健壮性测试
边界值分析测试的一种扩展,需 要考虑采用一个略超过最大值 (max+)及略小于最小值(min-)的 取值。
Y
c
d a b
X
有两个输入变量的程序F的健壮性测试用例
•
再如一程序属于情报检索系统,要求每次"最少显示1 条、最多显示4条情报摘要",我们应考虑的测试用例 包括1和4,还应包括0、2和3、5等。
2.2 边界值分析法 边界值分析原则
(4)如果程序的规格说明给出的输入域或输出 域是有序集合,则应选取集合的第一个元素 和最后一个元素作为测试用例。
(5)如果程序中使用了一个内部数据结构,则 应当选择这个内部数据结构的边界上的值作 为测试用例。
2.黑盒测试技术
本 节 内 容
2.2 边界值分析法
如果在悬崖峭壁旁边可以 自信而安全地行走而不掉下去, 那么在正常情况就应该不会有 什么问题。
2.2 边界值分析法 (Boundary Value Analysis,BVA)
• 长期的测试工作经验告诉 我们,大量的错误是发生 在输入或输出范围的边界 上,而不是发生在输入输 出范围的内部。因此针对 各种边界情况设计测试用 例,可以查出更多的错误。 • 美国陆军对其软件进行了 研究,令人吃惊地发现, 大量缺陷都是边界值缺陷。
• 边界值检验
• 在进行边界值检验时,要考虑这些类型
的以下特征:
• • • • • •
第一个/最后一个 开始/完成 空/满 最慢/最快 最大/最小 相邻/最远
• • • • •
最小值/最大值 超过/在内 最短/最长 最早/最迟 最高/最低
2.2 边界值分析法
• 越界检验的通常做法是简单地对于最大值加1或
• 例1: 学生成绩的取值范围为0~100的整数。 • 进行有效和无效等价类划分
采用等价类划分设计的测试用例
编号 1 2 输入数据 -5 50 输入(用例步骤) 输入学生的成绩小于0 输入学生的成绩在0-100 期望的输出/相应 提示错误信息 输出成绩为50
3
120
输入学生的成绩大于100
提示错误信息
课后预习
以组为单位,熟悉佣金问题(见下页)
要求: 1.分析输入和输出参数及其取值范围 2.分析并写出佣金的计算逻辑
wangchunxiu@ccniit.com
软件测试经典案例:佣金问题
某步枪经销商销售某制造商生产的枪枪 托和枪管,枪栓45美元,枪托30美元,枪管 25美元。经销商每月至少要售出一支完整的 步枪,且经销商每月最多可售出枪栓70支, 枪托80支,枪管90支。每月月底,经销商向 制造商报告当月销售情况,制造商根据销售 量计算经销商应得的佣金。销售额不超过 1000美元的部分,佣金为10%,大于1000且 不超过1800美元的部分为15%,超过1800美 元的部分为20%。
99
100 101
输入学生的成绩大于0,小于100
输入学生的成绩等于100 输入学生的成绩大于100
输出成绩为99
输出成绩为100 提示错误信息
2.2 边界值分析法 边界值分析原则 (1) 如果输入条件规定了一个输入值范围, 则应对范围的边界设计测试用例,同时 针对刚刚越界的情况设计无效输入测试 用例。
• • • • 速度 地点 尺寸 空间
常见边界值如下: 1)对16-bit 的整数而言 32767 和 -32768 是边界 2)屏幕上光标在最左上、最 右下位置 3)报表的第一行和最后一行 4)数组元素的第一个和最后 一个 5)循环的第 0 次、第 1 次 和倒数第 2 次、最后一次
2.2 边界值分析法
2.2 边界值分析法
定义:
• 边界值分析法
对输入或输出的边界值进行测试的一种黑盒测试方法。 通常边界值分析法是作为对等价类划分法的补充,这 种情况下,其测试用例来自等价类的边界。 边界值分析方法和等价类划分法的区别: – BVA不是选择等价类的任何元素,而是选择 等价类边界的测试用例 – BVA不仅注重于输入条件,而且也从输出域 导出测试用例。
•步骤一:确定输入输出条件 •输入:1.a≥0 2.a < 0 •输出:1.返回其正的平方根 2.显示错误信息Error •步骤二:同样划分等价类
参数
求平方根
有效等价类
a≥0
(1)
无效等价类
a < 0
(2)
•步骤三:取边界值作为测试用例 输入 {最小负实数} 输入 {绝对值很小的负数},如-0.01 输入 0 输入 {绝对值很小的正数},如0.01 输入 {最大正实数}
如何设计测试用例?
2.2 边界值分析法
类型一:标准性(一般性)测试
对于一个含有n个变量的程序, 保留其中一个变量,让其余的变量 取正常值,被保留的变量依次取min、 min+、nom、max-、max值,对每个 变量都重复进行。这样,对于一个 有n个变量的程序,边界值分析测试 程序会产生4n+1个测试用例。
例:如果某个输入文件可容纳1-255条记录,那么 应根据0、1、255和256条记录的情况设计测试用例
2.2 边界值分析法 边界值分析原则
(3) 对每个输出条件应用规则1和2。即设计 测试用例使输出值达到边界值及其左右的 值。
• 例:某程序的规格说明要求计算出"每月保险金扣除额 为0至1165.25元",其测试用例可取0.00及1165.25、 还可取-0.01、0.01及1165.24、1165.26等。
很小的数,以及对于最小值减1或很小的数。
第一个减1/最后一个加1 开始减1 /完成加1 空了再减/满了再加 慢上加慢/快上加快 最大加1 /最小减1 最小值减1 /最大值加1
相邻/最远 刚刚超过/刚好在内 短了再短/长了再长 早了更早/晚了更晚 最高加1/最低减1
2.2 边界值分析法
1、假设程序的输入变量为x,x的取值范围为 3 ≤ x ≤5 用边界值分析法为程序设计测试用例。 2、假设程序的输入变量为x、y,变量的取值范 围分别为: 3≤x≤5 2≤y≤4
(6)分析规格说明,找出其它可能的边界条件。
练习1:
•测试计算平方根的函数
--输入:实数 --输出:实数 --规格说明:当输入一个0或比0大的数的时候, 返回其正平方根;当输入一个小于0的数时,显示错误 信息"平方根非法-输入值小于0"并返回0;库函数 Print-Line可以用来输出错误信息。
采用边界值分析法确定边界值
2.2 边界值分析法 使用边界值分析方法设计测试用例
• 采用边界值分析法设计的测试用例又应该是怎样的
呢?
编号 1 2 3
输入数据 -1 0 1
输入(用例步骤) 输入学生的成绩小于0 输入学生的成绩等于0 输入学生的成绩大于0,小于100
期望的输出/相应 提示错误信息 输出成绩为0 输出成绩为1
4
5 6
2.2 边界值分析法
技巧:
边界值分析使用与等价类 划分法相同的划分,只是边界 值分析假定错误更多地存在于 划分的边界上,因此在等价类 的边界上以及两侧的情况设计 测试用例。
练习1:
保险费率的计算
• 保险费率计算百度文库,投保人年龄范围为[1,99]
20 ~ 39岁 年龄 40 ~ 59岁 60岁以上,20岁以下 6点 4点 2点
Foundation of Software Testing
第二部分:软件测试技术
Neusoft
回顾
等价类划分法
◆等价类划分的原则
◆等价类划分法的步骤
带上眼罩测试软件
常用的动态黑盒测试技术 1、等价类划分法 2、边界值分析法 3、错误推测法 4、因果图和决策表 5、场景法 6、功能图法 7、判定表驱动法 8、正交试验设计法
2.2 边界值分析法 使用边界值分析方法设计测试用例
• 首先应确定边界情况 – 通常输入和输出等价类的边界,就是应着重 测试的边界情况。
• 应当选取正好等于,刚刚大于或刚刚小于边界 的值作为测试数据,而不是选取等价类中的典 型值或任意值作为测试数据。
2.2 边界值分析法 使用边界值分析方法设计测试用例
对于一个含有n个变量的程序,保留 其中一个变量,让其余的变量取正 常值,被保留的变量依次取min、 min+、min-,nom、max-、max, max+ 值,对每个变量都重复进行。这样, 对于一个有n个变量的程序,边界值 分析测试程序会产生6n+1个测试用 例。
2.2 边界值分析法
有两个输入变量的程序F的边界值分析 (弱健壮性测试)测试用例: