软件测试技术-6黑盒测试边界值法_第1页
软件测试技术-6黑盒测试边界值法_第2页
软件测试技术-6黑盒测试边界值法_第3页
软件测试技术-6黑盒测试边界值法_第4页
软件测试技术-6黑盒测试边界值法_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、康玲 复习 边界值分析法 健壮性分析 练习 作业 等价类划分法? 等价类划分的原则 等价类类型 假设有两个变量x和y的程序F(x,y)=x+y,x、y在 下列范围内取值:10 x100,20y200, 区间10,100和20,200是x、y的输入域,程序F 的输入定义域如图3.7所示,即带阴影矩形中的 任何点都是程序F的有效输入。 图 有两个输入变量X、Y的程序F的输入域 10 100 20 200 x y 项目描述 具有很强的发现程序错误的能力具有很强的发现程序错误的能力故障往往出故障往往出 现在输入变量的边界值附近现在输入变量的边界值附近. 使用边界值分析方法设计测试用例使用边界值分析方法

2、设计测试用例,首先应确定首先应确定 边界情况边界情况. 测试用例来自等价类的边界;测试用例来自等价类的边界; 通常输入和输出等价类的边界通常输入和输出等价类的边界,就是应着重测试的就是应着重测试的 边界情况边界情况.应当选取正好等于应当选取正好等于,刚刚大于或刚刚小于刚刚大于或刚刚小于 边界的值作为测试数据边界的值作为测试数据,而不是选取等价类中的典而不是选取等价类中的典 型值或任意值作为测试数据型值或任意值作为测试数据. 无数的测试实践表明,大量的故障往往发生在无数的测试实践表明,大量的故障往往发生在 输入定义域或输出值域的边界上,而不是在其输入定义域或输出值域的边界上,而不是在其 内部。因

3、此,针对各种边界情况设计测试用例内部。因此,针对各种边界情况设计测试用例 ,通常会取得很好的测试效果。,通常会取得很好的测试效果。 例如,一个循环条件为例如,一个循环条件为“”“”时,却错写成时,却错写成 “”;计数器发生少计数一次。;计数器发生少计数一次。 故障往往出现在输入变量的边界值附近。例故障往往出现在输入变量的边界值附近。例 如,一个循环条件为如,一个循环条件为“”“”时,却错写成时,却错写成 “”;计数器发生少计数一次。;计数器发生少计数一次。 基于可靠性理论中称为基于可靠性理论中称为“单故障单故障”的假设,的假设, 即有两个或两个以上故障同时出现而导致软即有两个或两个以上故障同时

4、出现而导致软 件失效的情况很少,也就是说软件失效基本件失效的情况很少,也就是说软件失效基本 上是由单故障引起的。上是由单故障引起的。 (1 1)首先确定边界情况。通常输入或输出等价)首先确定边界情况。通常输入或输出等价 类的边界就是应该着重测试的边界情况。类的边界就是应该着重测试的边界情况。 (2 2)选取正好等于、刚刚大于或刚刚小于边界)选取正好等于、刚刚大于或刚刚小于边界 的值作为测试数据,而不是选取等价类中的典的值作为测试数据,而不是选取等价类中的典 型值或任意值。型值或任意值。 对对16bit 的整数而言的整数而言 32767 和和 -32768 是边界是边界 屏幕上光标在最左上、最右

5、下位置屏幕上光标在最左上、最右下位置 报表的第一行和最后一行报表的第一行和最后一行 数组元素的第一个和最后一个数组元素的第一个和最后一个 循环的第循环的第 0 次、第次、第 1 次和倒数第次和倒数第 2 次、最后一次次、最后一次 数字数字最大最大/最小最小 字符字符首位首位/末位末位 位置位置上上/下下 重量重量最重最重/最轻最轻 大小大小最大最大/最小最小 速度速度最快最快/最慢最慢 方位方位最高最高/最低最低 尺寸尺寸最短最短/最长最长 空间空间空空/满满 项项边界值边界值测试用例的设计思路测试用例的设计思路 字符字符 起始起始-1 -1个字个字 符符/ /结束结束 +1+1个字个字 符符

6、 假设一个文本输入区域允许输入假设一个文本输入区域允许输入1 1个到个到255255个个 字符,输入字符,输入1 1个和个和255255个字符作为有效等个字符作为有效等 价类;输入价类;输入0 0个和个和256256个字符作为无效等个字符作为无效等 价类,这几个数值都属于边界条件值。价类,这几个数值都属于边界条件值。 数值数值 最小值最小值-1/-1/ 最大值最大值 +1+1 假设某软件的数据输入域要求输入假设某软件的数据输入域要求输入5 5位的数位的数 据值,可以使用据值,可以使用1000010000作为最小值、作为最小值、 9999999999作为最大值;然后使用刚好小于作为最大值;然后使

7、用刚好小于5 5 位和大于位和大于5 5位的位的 数值来作为边界条件。数值来作为边界条件。 空间空间 小于空余小于空余 空间一空间一 点点/ /大于大于 满空间满空间 一点一点 例如在用例如在用U U盘存储数据时,使用比剩余磁盘盘存储数据时,使用比剩余磁盘 空间大一点(几空间大一点(几KBKB)的文件作为边界条)的文件作为边界条 件。件。 在多数情况下,边界值条件是基于应用程在多数情况下,边界值条件是基于应用程 序的功能设计而需要考虑的因素,可以从软序的功能设计而需要考虑的因素,可以从软 件的规格说明或常识中得到,也是最终用户件的规格说明或常识中得到,也是最终用户 可以很容易发现问题的。可以很

8、容易发现问题的。 然而,在测试用例设计过程中,某些边界值然而,在测试用例设计过程中,某些边界值 条件是不需要呈现给用户的,或者说用户是条件是不需要呈现给用户的,或者说用户是 很难注意到的,但同时确实属于检验范畴内很难注意到的,但同时确实属于检验范畴内 的边界条件,称为内部边界值条件或子边界的边界条件,称为内部边界值条件或子边界 值条件。值条件。 项项范围或值范围或值 位(位(bitbit)0 0 或或 1 1 字节字节(byte)(byte) 0 2550 255 字字(word)(word)065535(065535(单字单字) )或或 04294967295(04294967295(双字双

9、字) ) 千(千(K K)10241024 兆(兆(MM)10485761048576 吉(吉(G G) 10737418241073741824 字符字符ASCII码码字符字符ASCII码码 空空 (null)0A65 空格空格 (space)32a97 斜杠斜杠 ( / )47Z90 048z122 冒号冒号 ( : )58单引号单引号 ( )96 64 1.如果输入条件规定了值的范围如果输入条件规定了值的范围,则应取刚达到则应取刚达到 这个范围的边界的值这个范围的边界的值,以及刚刚超越这个范围以及刚刚超越这个范围 边界的值作为测试输入数据。边界的值作为测试输入数据。 Eg:如果程序的规格

10、说明中规定:如果程序的规格说明中规定:重量在重量在10 公斤至公斤至50公斤范围内的邮件,其邮费计算公式公斤范围内的邮件,其邮费计算公式 为为。 作为测试用例,我们应取作为测试用例,我们应取10及及50,还应取,还应取 10.01,49.99,9.99及及50.01等。等。 2.如果输入条件规定了值的个数如果输入条件规定了值的个数,则用最大个数则用最大个数, 最小个数最小个数,比最小个数少一比最小个数少一,比最大个数多一的比最大个数多一的 数作为测试数据。数作为测试数据。 eg:一个输入文件应包括:一个输入文件应包括1255个记录,个记录, 则测试用例可取则测试用例可取1和和255,还应取,还

11、应取0及及256等。等。 3.将规则将规则1和和2应用于输出条件,即设计测试用例应用于输出条件,即设计测试用例 使输出值达到边界值及其左右的值。使输出值达到边界值及其左右的值。 Eg:某程序的规格说明要求计算出:某程序的规格说明要求计算出“每月保险金每月保险金 扣除额为扣除额为0至至1165.25元元”,其测试用例可取,其测试用例可取0.00 及及1165.24、还可取一、还可取一0.01及及116526等。等。 再如一程序属于情报检索系统,要求每次再如一程序属于情报检索系统,要求每次最少最少 显示显示1条、最多显示条、最多显示4条情报摘要条情报摘要,这时我们应,这时我们应 考虑的测试用例包括

12、考虑的测试用例包括1和和4,还应包括,还应包括0和和5等。等。 4.如果程序的规格说明给出的输入域或输出域如果程序的规格说明给出的输入域或输出域 是有序集合是有序集合,则应选取集合的第一个元素和最则应选取集合的第一个元素和最 后一个元素作为测试用例。后一个元素作为测试用例。 5.如果程序中使用了一个内部数据结构如果程序中使用了一个内部数据结构,则应当则应当 选择这个内部数据结构的边界上的值作为测选择这个内部数据结构的边界上的值作为测 试用例。试用例。 6.分析规格说明分析规格说明,找出其它可能的边界条件。找出其它可能的边界条件。 输入区间 1 2345 0 ()() 测试平方根函数的两个输入区

13、间 Test1:输入最大负实数输入最大负实数,返回返回0,输出输出error! Test2:输入仅比输入仅比0小的数小的数,返回返回0,输出输出error! Test3:输入输入0,返回返回0. Test4:输入仅比输入仅比0大的数大的数,返回输入的正数平方根返回输入的正数平方根. Test5:最大正实数最大正实数,返回输入的正数平方根返回输入的正数平方根 假设有两个变量假设有两个变量x和和y的程序,的程序,x、y在下列范围内在下列范围内 取值:取值:axbcyd 区间区间a,b和和c,d是是x、y的值域,程序的值域,程序F的输入定的输入定 义域图所示,即带阴影矩形中的任何点都是程义域图所示,

14、即带阴影矩形中的任何点都是程 序序F的有效输入。的有效输入。 有两个输入变量的程序F的边界值分析测试用例 a b c d y x 故障往往出现在输入变量的边界值附近。例如一个故障往往出现在输入变量的边界值附近。例如一个 循环条件为循环条件为“”时,却错写成时,却错写成“”;计数器发生;计数器发生 少计数一次。少计数一次。 基于可靠性理论中称为基于可靠性理论中称为“单故障单故障”的假设,即有两的假设,即有两 个或两个以上故障同时出现而导致软件失效的情况个或两个以上故障同时出现而导致软件失效的情况 很少,也就是说软件失效基本上是由单故障引起的。很少,也就是说软件失效基本上是由单故障引起的。 因此,

15、边界值分析利用输入变量的最小值因此,边界值分析利用输入变量的最小值(min)、 略大于最小值略大于最小值(min+)、输入值域内的任意值、输入值域内的任意值(nom)、 略小于最大值略小于最大值(max-)和最大值和最大值(max)来设计测试用来设计测试用 例例. ; ; ; ; ; ; ; ; ; 有两个输入变量的程序F的边界值分析测试用例 a b c d x2 x1 有二元函数有二元函数f( f(x,yx,y) ),其中,其中x1,12x1,12,y1,31y1,31。 则采用边界值分析法设计的测试用例是:则采用边界值分析法设计的测试用例是: , , , , , , , , , 对于一个对

16、于一个含有含有n个变量个变量的程序,只让其中一个变量取的程序,只让其中一个变量取 极值,让其余的变量取正常值,被保留的变量依次取极值,让其余的变量取正常值,被保留的变量依次取 min、min+、nom、max-、max值,对每个变值,对每个变 量都重复进行。这样,对于一个有量都重复进行。这样,对于一个有n个变量的程序,个变量的程序, 边界值分析测试程序会产生边界值分析测试程序会产生4n+1个测试用例。个测试用例。 对于一个含对于一个含n个变量的函数,边界值分析会产个变量的函数,边界值分析会产 生生4n1个测试用例。个测试用例。 边界值的取值取决于变量本身的性质。边界值的取值取决于变量本身的性质

17、。 边界值分析对布尔变量没有什么意义。边界值分析对布尔变量没有什么意义。 边界值分析假设变量是完全独立的。边界值分析假设变量是完全独立的。 边界值分析测试的一种扩展,除了取边界值分析测试的一种扩展,除了取5个边界个边界 值外,还需要考虑采用一个略超过最大值值外,还需要考虑采用一个略超过最大值 (max+)及略小于最小值及略小于最小值(min-)的取值,检查超的取值,检查超 过极限值时系统的情况过极限值时系统的情况 健壮性测试最有意义的部分不是输入,而是预健壮性测试最有意义的部分不是输入,而是预 期的输出。期的输出。 a b c d y x , , , , , , , , , , , , 有函数

18、有函数f( f(x,y,zx,y,z) ),其中,其中x1900,2100 x1900,2100, y1,12y1,12,z1,31z1,31的。请写出该函数采用的。请写出该函数采用 边界值分析法设计的测试用例。边界值分析法设计的测试用例。 边界值分析采用可靠性理论中的单缺陷假设,边界值分析采用可靠性理论中的单缺陷假设, 如果不考虑这种假设,那么,应该关心当多个如果不考虑这种假设,那么,应该关心当多个 变量取极值时会出现什么情况。变量取极值时会出现什么情况。 使用这种思想生成最坏情况的测试用例,首先使用这种思想生成最坏情况的测试用例,首先 对每个变量进行包含最小值对每个变量进行包含最小值min

19、,略高于最小,略高于最小 值值min+,正常值,正常值nom,略低于最大值,略低于最大值max-和和 最大值最大值max五个元素集合的测试,五个元素集合的测试, 然后对这些集合进行笛卡儿积计算,以生成测然后对这些集合进行笛卡儿积计算,以生成测 试用例。试用例。 a b c d x2 x1 最坏情况测试比边界值分析测试以及健壮性测最坏情况测试比边界值分析测试以及健壮性测 试要彻底,边界值分析测试用例是最坏情况测试要彻底,边界值分析测试用例是最坏情况测 试用例的真子集。试用例的真子集。 n个变量函数的最坏情况测试,会产生个变量函数的最坏情况测试,会产生5n个测个测 试用例,而边界值分析只产生试用例

20、,而边界值分析只产生4n+1个测试用例。个测试用例。 首先对每个变量进行包含略小于最小值首先对每个变量进行包含略小于最小值 min-,最小值,最小值min,略高于最小值,略高于最小值min+, 正常值正常值nom,略低于最大值,略低于最大值max-,最大值最大值 max,和略大于最大值和略大于最大值max+,七个元素集合七个元素集合 的测试,然后对这些集合进行笛卡儿积计算的测试,然后对这些集合进行笛卡儿积计算 ,以生成测试用例。,以生成测试用例。 a d c b x1 x2 边界值分析测试 边界值分析的健壮性测试 最坏情况测试 健壮最坏情况测试 测试用例测试用例abc预期输出预期输出 Test

21、1 Test2 Test3 Test4 Test5 60 60 60 50 50 60 60 60 50 50 1 2 60 99 100 等腰三角形等腰三角形 等腰三角形等腰三角形 等边三角形等边三角形 等腰三角形等腰三角形 非三角形非三角形 Test6 Test7 Test8 Test9 60 60 50 50 1 2 99 100 60 60 50 50 等腰三角形等腰三角形 等腰三角形等腰三角形 等腰三角形等腰三角形 非三角形非三角形 Test10 Test11 Test12 Test13 1 2 99 100 60 60 50 50 60 60 50 50 等腰三角形等腰三角形 等腰

22、三角形等腰三角形 等腰三角形等腰三角形 非三角形非三角形 测试用例monthdayyear预期输出 Test1 Test2 Test3 Test4 Test5 Test6 Test7 Test8 Test9 6 6 6 6 6 6 6 6 6 15 15 15 15 15 15 15 0 1 1911 1912 1913 1975 2049 2050 2051 2001 2001 year超出超出1912,2050 1912.6.16 1913.6.16 1975.6.16 2049.6.16 2050.6.16 year超出超出1912,2050 day超出超出1,31 2001.6.2 测试用例monthdayyear预期输出 Test10 Test11 Test12 Test13 Test14 Test15 Test16 Test17 Test18 Test19 6 6 6 6 -1 1 2 11 12 14 2 30 31 32 15 15 15 15 15 15 2001 2001 2001 2001 2001 2001 2001 2001 2001 2001 2001.6.3 2001.7.1 输入日期超界输入日期超界 day超出超出1,31 month超出超出1,12 2001.1.16 2001.2.16

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论