您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 工作范文 > 软件功能测试基本知识之边界值
边界值测试•本章内容–边界值分析(掌握)–健壮性测试(掌握)–最坏情况测试(掌握)–特殊值测试(了解)–举例(了解)•边界如:两个变量x1和x2的函数F,若F为实现一个程序,要输入x1和x2就可能存在边界:a≤x1≤b,c≤x2≤d,比如,在做三角形计算时,要输入三角形的三个边长:A、B和C。我们应注意到这三个数值应当满足:A>0、B>0、C>0、A+B>C、A+C>B、B+C>A,才能构成三角形。但如果把六个不等式中的任何一个大于号“>”错写成大于等于号“≥”,那就不能构成三角形。问题常出现在容易被疏忽的边界附近。边界的定义•边界是指,相当于输入等价类和输出等价类而言,稍高于其边界值及稍低于其边界值的一些特定情况边界值的例子:1.对16-bit的整数而言32767和-32768是边界2.屏幕上光标在最左上、最右下位置3.报表的第一和最后一行4.数组元素的第一个和最后一个5.循环的第0次、第1次和倒数第2次、最后一次边界值分析•边界值分析的基本思想是:使用在最小值、略高于最小值、正常值、略低于最大值和最大值处取输入变量值。dax2cx1b•边界值分析的假设:“单缺陷”假设。即,失效极少是由两个(或多个)缺陷的同时发生引起的。边界值分析是:考虑边界条件而选取测试用例的一种功能测试方法。边界值分析关注:输入空间的边界,以标识测试用例,因为错误更可能出现在输入变量的极值附近•边界值分析测试用例的获得:只使一个变量取极值,其余变量取正常值。•对于一个n变量的函数,边界值分析会产生4n+1个测试用例。•注意:边界值分析也是一种黑盒测试人们长期的测试工作经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。推导:边界值分析的假设:“单缺陷”假设。方法:如一个n变量函数,使除一个以外的所有变量取正常值,使剩余的那个变量取最小值、略高于最小值、正常值、略低于最大值和最大值,对于每个变量都重复进行。1.定义域的边界2.一个变量取边界值,其他变量取正常值即:{a1边界集合}X{a2一个正常值}X{a3一个正常值}X{a4一个正常值}…….共an个集合.3.|{边界集合}|=4,|{一个正常值}|=1,|{a1边界集合}X{a2一个正常值}X{a3一个正常值}X{a4一个正常值}…….|=4,共4*n个输入值4.最后补上一正常值,所有变量都取正常值5.共计4*n+1;•使用边界值分析方法设计测试用例,首先应确定边界情况。•根据边界值集合完成迪卡尔积(“单缺陷”假设)强调:边界值分析的假设:“单缺陷”假设。1.如两个变量函数F的边界分析测试用例是:{x1nom,x2min,x1nom,x2min+,x2dacx1b●●●●●●●●●x1nom,x2max-,x1nom,x2max,x1min,x2nom,x1min+,x2nom,x1max-,x2nom,x1max,x2nom,x1nom,x2nom}最后补充正常点注意:•(1)每个边界都要作为测试条件。•(2)边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。(1)边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件。(2)输出空间产生边界值的测试情况来考虑条件测试边界线•测试临近边界的合法数据,以及刚超过边界的非法数据.•越界测试通常简单地加1或很小的数•(对于最大值)和减1或很小的数(对于最小值).边界确定的方法归纳边界值分析•有两种方式归纳:–通过变量数量–通过值域的种类•归纳变量数量–这种方法将产生4n+1个测试用例•归纳值域的种类–归纳值域取决于变量本身的性质(类型)方法:如一个n变量函数,使除一个以外的所有变量取正常值,使剩余的那个变量取最小值、略高于最小值、正常值、略低于最大值和最大值,对于每个变量都重复进行。可能的数据类型被测试子域测试内点测试外点软件边界与悬崖很类似边界值分析的局限性–测试用例不充分–不能发现测试变量之间的依赖关系–不考虑含义和性质,没有利用理解和想象–只能作为初步测试用例使用边界值测试分析采用了可靠性理论的单缺陷假设,如果被测试程序是多个独立变量的函数,这些变量受物理量的限制。健壮性测试•健壮性是指在异常情况下,软件还能正常运行的能力。•健壮性有两层含义:–容错能力–恢复能力容错性测试通常构造一些不合理的输入来引诱软件出错,例如:(1)输入错误的数据类型。(2)输入定义域之外的数值。恢复测试重点考察一下几项:(1)系统能否重新运行;(2)有无重要的数据丢失;(3)是否毁坏了其它相关的软件硬件。•除了变量的5个边界分析取值还要考虑略超过最大值(max)和略小于最小值(min)时的情况数据类型可能是:•数值•字符•位置•数量•速度•地址•尺寸•……还要考虑数据类型的特征:•第一个/最后一个•最小值/最大值•开始/完成•空/满•最慢/最快•相邻/最远•超过/在内•……健壮性测试是边界值分析的一种简单扩展。方法:如一个n变量函数,使除一个以外的所有变量取正常值,使剩余的那个变量取最小值、略高于最小值、正常值、略低于最大值和最大值,超过最大值,略小于最小值,对于每个变量都重复进行。{min-,min,min+,nom,max-,max,max+}健壮性考虑的主要部分是预期输出,而不是输入;健壮性测试的主要价值是观察例外情况的处理;如果采用例外处理选择,则必须进行健壮性测试;特殊值测试•特点:最直观、最不一致、具有高度主观性•特殊值测试特别依赖测试人员的能力特殊值测试大概是运用最广泛的一种功能测试虽然特殊值测试是高度主观性的,但是能更有效地发现缺陷举例•三角形问题的测试用例•三角形问题的测试用例•随机测试的基本思想:•使用随机数生成器选出测试用例值dacx1b●●●●●●●●●●●●●随机测试用例不是永远选取有界变量的最小值、略高于最小值、正常值、略低于最大值和最大值,而是三角形程序的随机测试用例dacb●●●●●●●●●●●●●●●●●●●●●●●●●●●●
本文标题:软件功能测试基本知识之边界值
链接地址:https://www.777doc.com/doc-2011554 .html