文档详情

边界值法分析法

hs****ma
实名认证
店铺
PPT
1.39MB
约31页
文档ID:585234195
边界值法分析法_第1页
1/31

第二部分:软件测试技术第二部分:软件测试技术NeusoftFoundation of Software Testing ¦等价类划分法等价类划分法◆等价类划分的原则◆等价类划分法的步骤回顾 带上眼罩测试软件常用的动态黑盒测试技术常用的动态黑盒测试技术    1、等价类划分法2、边界值分析法3、错误推测法4、因果图和决策表5、场景法6、功能图法7、判定表驱动法8、正交试验设计法 2.2.黑盒测试技术黑盒测试技术本本节节内内容容2.2 边界值分析法 如果在悬崖峭壁旁边可以如果在悬崖峭壁旁边可以自信而安全地行走而不掉下去,自信而安全地行走而不掉下去,那么在正常情况就应该不会有那么在正常情况就应该不会有什么问题什么问题 (Boundary Value Analysis,BVA)•长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部因此针对各种边界情况设计测试用例,可以查出更多的错误•美国陆军对其软件进行了研究,令人吃惊地发现,大量缺陷都是边界值缺陷2.2 边界值分析法 定义:•边界值分析法边界值分析法对输入或输出的边界值进行测试的一种黑盒测试方法。

通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界2.2 边界值分析法边界值分析方法和等价类划分法的区别:–BVA不是选择等价类的任何元素,而是选择不是选择等价类的任何元素,而是选择等价类边界的测试用例等价类边界的测试用例–BVA不仅注重于不仅注重于输入条件,而且也从而且也从输出域导出测试用例导出测试用例    使用边界值分析方法设计测试用例•首先应确定边界情况–通常输入和输出等价类的边界,就是应着重测试的边界情况•应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据 2.2 边界值分析法 使用边界值分析方法设计测试用例使用边界值分析方法设计测试用例•例1: 学生成绩的取值范围为0~100的整数•进行有效和无效等价类划分采用等价类划分设计的测试用例采用等价类划分设计的测试用例编号输入数据输入(用例步骤)期望的输出/相应1-5输入学生的成绩小于0 提示错误信息250输入学生的成绩在0-100 输出成绩为50 3120输入学生的成绩大于100 提示错误信息2.2 边界值分析法 •采用边界值分析法设计的测试用例又应该是怎样的呢?编号输入数据输入(用例步骤)期望的输出/相应1-1输入学生的成绩小于0 提示错误信息20输入学生的成绩等于0 输出成绩为031输入学生的成绩大于0,小于100输出成绩为1499输入学生的成绩大于0,小于100输出成绩为995100输入学生的成绩等于100 输出成绩为1006101输入学生的成绩大于100 提示错误信息使用边界值分析方法设计测试用例使用边界值分析方法设计测试用例2.2 边界值分析法 边界值分析原则边界值分析原则(1) 如果输入条件规定了一个输入值范围,则应对范围的边界设计测试用例,同时针对刚刚越界的情况设计无效输入测试用例。

例:•如果输入值的有效范围是0-100的整数,那么应针对0,100设计测试用例,还应选取-1,1,99,101设计测试用例2.2 边界值分析法 (2) 如果输入条件规定了输入值的数量,则应针对输入数量的最小值、输入数量的最大值、以及比最小数量少一个,比最大数量多一个的情况设计测试用例 例:如果某个输入文件可容纳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条、最多显示4条情报摘要",我们应考虑的测试用例包括1和4,还应包括0、2和3、5等边界值分析原则边界值分析原则2.2 边界值分析法 (4)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例5)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。

6)分析规格说明,找出其它可能的边界条件边界值分析原则边界值分析原则2.2 边界值分析法 •测试计算平方根的函数 --输入:实数 --输出:实数 --规格说明:当输入一个0或比0大的数的时候,返回其正平方根;当输入一个小于0的数时,显示错误信息"平方根非法-输入值小于0"并返回0;库函数Print-Line可以用来输出错误信息采用边界值分析法确定边界值采用边界值分析法确定边界值练习练习1 1:: •步骤一:确定输入输出条件•输入:1.a≥0 2.a < 0•输出:1.返回其正的平方根 2.显示错误信息Error•步骤二:同样划分等价类参数有效等价类无效等价类求平方根a≥0 (1)(1)a < 0 (2)(2) •步骤三:取边界值作为测试用例输入 {最小负实数}输入 {绝对值很小的负数},如-0.01输入 0输入 {绝对值很小的正数},如0.01输入 {最大正实数} 2.2 边界值分析法 边界值分析使用与等价类划分法相同的划分,只是边界值分析假定错误更多地存在于划分的边界上,因此在等价类的边界上以及两侧的情况设计测试用例技巧: 保险费率的计算•保险费率计算中,投保人年龄范围为[1,99]年龄20 ~ 39岁6点40 ~ 59岁4点60岁以上,20岁以下2点•要求采用边界值分析法设计测试用例。

练习练习1 1:: 练习练习2 2::成绩评定•要求采用边界值分析法为该成绩评定系统的输入设计测试用例 某考试共有50道题,每题2分,成绩评定系统根据答对题目的数量给出成绩及等级(合格:≥60,优秀:≥80分) •数值 •字符•位置•数量•重量•边界值的类型边界值的类型常见边界值如下:1)对16-bit 的整数而言 32767 和 -32768 是边界2)屏幕上光标在最左上、最右下位置3)报表的第一行和最后一行4)数组元素的第一个和最后一个5)循环的第 0 次、第 1 次和倒数第 2 次、最后一次•速度•地点•尺寸•空间2.2 边界值分析法  •在进行边界值检验时,要考虑这些类型的以下特征:•第一个/最后一个•开始/完成•空/满•最慢/最快•最大/最小•相邻/最远•最小值/最大值•超过/在内•最短/最长•最早/最迟•最高/最低2.2 边界值分析法•边界值检验边界值检验 •越界检验的通常做法是简单地对于最大值加1或很小的数,以及对于最小值减1或很小的数第一个减1/最后一个加1开始减1 /完成加1空了再减/满了再加慢上加慢/快上加快最大加1 /最小减1最小值减1 /最大值加1相邻/最远刚刚超过/刚好在内短了再短/长了再长早了更早/晚了更晚最高加1/最低减12.2 边界值分析法 1、假设程序的输入变量为x,x的取值范围为•思考思考3≤x≤52、假设程序的输入变量为x、y,变量的取值范围分别为:3≤x≤52≤y≤4如何设计测试用例?用边界值分析法为程序设计测试用例。

2.2 边界值分析法 min:最小值max: 最大值nom: 值域里的任意值类型一:标准性(一般性)测试 对于一个含有n个变量的程序,保留其中一个变量,让其余的变量取正常值,被保留的变量依次取min、min+、nom、max-、max值,对每个变量都重复进行这样,对于一个有n个变量的程序,边界值分析测试程序会产生4n+1个测试用例2.2 边界值分析法 类型二:健壮性测试边界值分析测试的一种扩展,需要考虑采用一个略超过最大值(max+)及略小于最小值(min-)的取值对于一个含有n个变量的程序,保留其中一个变量,让其余的变量取正常值,被保留的变量依次取min、min+、min-,nom、max-、max, max+值,对每个变量都重复进行这样,对于一个有n个变量的程序,边界值分析测试程序会产生6n+1个测试用例2.2 边界值分析法 有两个输入变量的程序F的边界值分析(弱健壮性测试)测试用例:;;;;;;;;;;;;2.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]的请写出该函数采用基本边界值分析法设计的测试用例2.2 边界值分析法 课后预习以组为单位,熟悉佣金问题(见下页)要求:1.分析输入和输出参数及其取值范围2.分析并写出佣金的计算逻辑 软件测试经典案例:佣金问题某步枪经销商销售某制造商生产的枪枪托和枪管,枪栓45美元,枪托30美元,枪管25美元经销商每月至少要售出一支完整的步枪,且经销商每月最多可售出枪栓70支,枪托80支,枪管90支每月月底,经销商向制造商报告当月销售情况,制造商根据销售量计算经销商应得的佣金销售额不超过1000美元的部分,佣金为10%,大于1000且不超过1800美元的部分为15%,超过1800美元的部分为20%。

下载提示
相似文档
正为您匹配相似的精品文档