《边界值测试》PPT课件.ppt
《《边界值测试》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《边界值测试》PPT课件.ppt(44页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院第二部分第二部分 单元测试单元测试第五章 边界值测试5.1 5.1 边界值分析边界值分析边界值分析边界值分析5.2 5.2 健壮性测试健壮性测试健壮性测试健壮性测试5.3 5.3 最坏情况测试最坏情况测试最坏情况测试最坏情况测试5.4 5.4 特殊值测试特殊值测试特殊值测试特殊值测试5.5 5.5 示例示例示例示例5.6 5.6 随机测试随机测试随机测试随机测试5.7 5.7 边界值测试原则边界值测试原则边界值测试原则边界值测试原则Boundary test If you can saf
2、ely and confidently walk along the edge of a cliff without falling off,you can almost certainly walk in the middle of a field.测试内点测试内点测试外点测试外点被测试被测试子域子域安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院第五章第五章 边边界界值测试值测试函数函数v函函数数:是是将将一一个个集集合合(函函数数的的定定义域域)的的值映映射射到到另另一一个个集集合合(函函数数的的值域域)的的值上上。任任何何程程
3、序序都都可可以以看看做做是是一一个个函函数数,程程序序的的输入入构构成成函函数数的的定定义域域,程程序序的的输出出构构成成函函数数的的值域域。v输入定入定义域域测试是最著名的功能性是最著名的功能性测试手段。手段。安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院第五章第五章 边边界界值测试值测试边界值测试边界值测试v任任何何一一个个程程序序都都可可以以看看做做是是一一个个函函数数,程程序序的的输入入构构成成函函数数的的定定义域域,程程序序的的输出出构构成成函函数数的的值域域。人人们从从长期期的的测试工工作作经验得得知知,大大量量的的错误
4、是是发生生在在定定义域域或或值域域(输出出)的的边界界上上,而而不不是是在在其其内内部部。对于于软件件缺缺陷陷,有有句句谚语形容得很恰当,即形容得很恰当,即“缺陷缺陷遗漏在角落里,聚集在漏在角落里,聚集在边界上界上”。安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院第五章第五章 边边界界值测试值测试边界值测试边界值测试v做做三三角角形形计算算时,要要输入入三三角角形形的的三三个个边长A、B和和C。这三三个个数数值应当当满足足A0、B0、C0、A+BC、A+CB、B+CA,才才能能构构成成三三角角形形。但但如如果果把把六六个个不不等等式
5、式中中的的任任何何一一个大于号个大于号“”错写成大于等于号写成大于等于号“”,那就不能构成三角形。,那就不能构成三角形。v计数器常常数器常常“少少记一次一次”;v循循环条件条件应该是是“”时错误地写成了地写成了“”;v数数组下下标越越界界(在在C语言言中中数数组下下标是是从从零零开开始始,可可能能错误地地认为是从是从1开始,从而使最后一个元素的下开始,从而使最后一个元素的下标越界越界)等。等。安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院第五章第五章 边边界界值测试值测试边界值设计原则边界值设计原则v(1)如如果果输入入条条件件规定
6、定了了值的的范范围,则应取取刚达达到到这个个范范围的的边界界的的值,以以及及刚刚超超越越这个个范范围边界界的的值作作为测试输入数据。入数据。例例如如,如如果果程程序序的的规格格说明明中中规定定:“重重量量在在10公公斤斤至至50公公斤斤范范围内内的的包包裹裹,其其邮费计算算公公式式为 ”。作作为测试用用例例,我我们应取取10及及50,还应取取10.01,49.99,9.99及及50.01等。等。安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院第五章第五章 边边界界值测试值测试边界值设计原则边界值设计原则v(2)如如果果输入入条条件件规
7、定定了了值的的个个数数,则用用最最大大个个数数、最最小小个个数数、比比最最小小个个数数少少一一、比比最最大大个个数数多多一一的的数数作作为测试数据。数据。例例如如,一一个个输入入文文件件应包包括括1-255个个记录,则测试用用例例可可取取1和和255,还应取取0及及256等。等。安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院第五章第五章 边边界界值测试值测试边界值设计原则边界值设计原则v(3)将将规则1和和2应用用于于输出出条条件件,即即设计测试用用例例使使输出出值达到达到边界界值及其左右的及其左右的值。例例如如,一一程程序序属属于
8、于论文文检索索系系统,要要求求每每次次”最最少少显示示1条条、最最多多显示示4条条论文文摘摘要要”,这时我我们应考考虑的的测试用用例例包包括括1和和4,还应包括包括0和和5等。等。再再如如,一一个个学学生生成成绩管管理理系系统规定定,只只能能查询15-18级大大学学生生的的各各科科成成绩,在在设计测试用用例例时,可可以以设计查询范范围内内的的某某一一届届或或四四届届学学生生的的学学生生成成绩,还需需设计查询14级、19级学生成学生成绩的的测试用例(不合理用例(不合理输出)。出)。安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院第五章第
9、五章 边边界界值测试值测试边界值设计原则边界值设计原则v(4)如如果果程程序序的的规格格说明明给出出的的输入入域域或或输出出域域是是有有序序集集合合(如如顺序序文文件件、线性性表表等等),则应选取取集集合合的的第第一一个个元素和最后一个元素作元素和最后一个元素作为测试用例。用例。v(5)如如果果程程序序中中使使用用了了一一个个内内部部数数据据结构构,则应当当选择这个内部数据个内部数据结构的构的边界上的界上的值作作为测试用例。用例。例例如如,如如果果程程序序中中定定义了了一一个个数数组,其其元元素素下下标的的下下界界是是0,上上界界是是100,那那么么应选择达达到到这个个数数组下下标边界界的的值
10、,如如0与与100,作,作为测试用例。用例。v(6)分析分析规格格说明,找出其他可能存在的明,找出其他可能存在的隐藏藏边界条件。界条件。安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院第五章第五章 边边界界值测试值测试常见的边界值举例常见的边界值举例v).对16-bit 的整数而言的整数而言 32767 和和-32768 是是边界界v).屏幕上光屏幕上光标在最左上、最右下位置在最左上、最右下位置 v).报表的第一行和最后一行表的第一行和最后一行 v).数数组元素的第一个和最后一个元素的第一个和最后一个 C+语言中,言中,int A10
11、:A0A9 MATLAB语言中是从言中是从 110v).循循环的第的第 0 次、第次、第 1 次和倒数第次和倒数第 2 次、最后一次次、最后一次安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院第五章第五章 边边界界值测试值测试常见的边界值举例常见的边界值举例v1数数值的的边界界值计算算机机是是基基于于二二进制制进行行工工作作的的,因因此此,软件件的的任任何何数数值运运算算都都有有一一定定的的范范围限限制制。比比如如一一个个字字节由由8位位组成成,一一个个字字节所所能能表表达达的的数数值范范围是是0,255。下下表表列列出出了了计算机中
12、常用数算机中常用数值的范的范围。安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院第五章第五章 边边界界值测试值测试常见的边界值举例常见的边界值举例v2字符的字符的边界界值在在计算算机机软件件中中,字字符符也也是是很很重重要要的的表表示示元元素素。其其中中ASCII和和Unicode是是常常见的的编码方方式式。如如果果要要测试文文本本输入入或或文文本本转换的的软件件,在在定定义数数据据区区间包包含含哪哪些些值时,就就可可以以参参考考ASCII码表表,找找出出隐含含的的边界界条条件件。下下表表中中列列出了一些常用字符出了一些常用字符对应的
13、的ASCII码值。安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院第五章第五章 边边界界值测试值测试常见的边界值举例常见的边界值举例v3其他其他边界条件界条件有有一一些些边界界条条件件容容易易被被人人忽忽略略,比比如如在在文文本本框框中中不不是是没没有有输入入正正确确的的信信息息,而而是是根根本本就就没没有有输入入任任何何内内容容,然然后后就就按按“确确认”按按钮。这种种情情况况常常常常被被遗忘忘或或忽忽视了了,但但在在实际使使用用中中却却时常常发生生。因因此此在在测试时还需需要要考考虑程程序序对默默认值、空白、空、空白、空值、零、零
14、值、无、无输入等情况的反入等情况的反应。在在进行行边界界值测试时,如如何何确确定定边界界条条件件的的取取值呢呢?一一般般情况下,确定情况下,确定边界界值应遵循以下几条原遵循以下几条原则:v(1)如如果果输入入条条件件规定定了了值的的范范围,则应取取刚达达到到这个个范范围的的边界界的的值,以以及及刚刚超超越越这个个范范围边界界的的值作作为测试输入数据。入数据。安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院第五章第五章 边边界界值测试值测试常见的边界值举例常见的边界值举例v(2)如如果果输入入条条件件规定定了了值的的个个数数,则用用最最
15、大大个个数数、最最小小个个数数、比比最最小小个个数数少少一一、比比最最大大个个数数多多一一的的数数作作为测试数数据。据。v(3)如如果果程程序序的的规格格说明明给出出的的输入入域域或或输出出域域是是有有序序集集合合,则应选取取集集合合的的第第一一个个元元素素和和最最后后一一个个元元素素作作为测试数据。数据。v(4)如如果果程程序序中中使使用用了了一一个个内内部部数数据据结构构,则应当当选择这个内部数据个内部数据结构的构的边界上的界上的值作作为测试数据。数据。v(5)分析分析规格格说明,找出其他可能明,找出其他可能隐藏的藏的边界条件。界条件。安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算
16、机与信息学院算机与信息学院算机与信息学院算机与信息学院第五章第五章 边边界界值测试值测试边界值分析边界值分析v设有有两两个个变量量x1和和x2的的函函数数 F,如如果果函函数数 F 的的实现是是一一个个程程序序,则输入入两两个个变量量x1和和x2会会有有一一些些边界界(可可能能为规定定):ax1b cx2d v边界界值分析关注的是分析关注的是输入空入空间的的边界界,以,以标识测试用例。用例。v边界界值测试背背后后的的基基本本原原理理是是错误更更可可能能出出现在在输入入变量量的极的极值附近附近。安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信
17、息学院x2x1dbac边界值分析边界值分析v有有些些强类型型语言言(Pascal和和Ada)允允许显示示其其定定义的的变量量值域域。其其目目的的就就是是要要防防止止程程序序员出出现某某些些边界界的的错误。而而边界界测试更适用于采用非更适用于采用非强类型型语言言编写的程序。写的程序。第五章第五章 边边界界值测试值测试安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院边界值分析边界值分析v边界界值分分析析的的基基本本思思想想是是使使用用在在最最小小值、略略大大于于最最小小值、正正常常值、略小于最大、略小于最大值和最大和最大值处取得的取得的值
18、作作为输入入变量量值。v我我们将将以以上上这些些在在边界界值分分析析中中取取得得的的输入入变量量值分分别记做做:min、min+、nom、max-和和max。v边界界值分分析析的的要要点点就就是是基基于于一一种种关关键假假设,叫叫做做“单缺缺陷陷”假假设。这种种假假设是是说,失失效效极极少少是是由由两两个个(或或多多个个)缺缺陷陷的的同同时发生引起的。生引起的。v因因此此,通通过使使所所有有变量量取取正正常常值,而而只只使使一一个个变量量取取极极值来来获得得边界界值分析分析测试用例。用例。第五章第五章 边边界界值测试值测试安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与
19、信息学院算机与信息学院算机与信息学院边界值分析边界值分析v当当一一个个函函数数或或程程序序有有两两个个及及两两个个以以上上的的输入入变量量时,就就需需要要考考虑如如何何组合合各各变量量的的取取值。我我们可可根根据据可可靠靠性性理理论中中的的单缺陷假缺陷假设和多缺陷假和多缺陷假设来考来考虑。v单缺缺陷陷假假设,即即被被测对象象只只要要在在某某个个输入入条条件件的的某某个个边界界出出错,则在在任任何何包包含含该输入入条条件件的的某某个个边界界的的情情况况下下一一定定会会出出错,那那么么测试时仅覆覆盖盖输入入条条件件的的单个个边界界点点即即可可,无无需需测试多多个个输入入条条件件取取边界界测试数数据
20、据的的情情况况。因因此此,单缺缺陷陷假假设的的策策略略是是在在任任何何一一个个测试用用例例中中,有有且且只只能能有有一一个个输入入条条件件的的取取值为边界界邻域域内内的的测试数数据据,其其他他输入入条条件件应取取正正常常值(一般一般为相相邻边界点之界点之间的中的中值)。v在在边界界值分分析析中中,用用到到了了单缺缺陷陷假假设,即即选取取测试用用例例时仅仅使得一个使得一个变量取极量取极值,其他,其他变量均取正常量均取正常值。第五章第五章 边边界界值测试值测试安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院边界值分析边界值分析v对于我于我
21、们的两的两变量函数量函数F,其其边界界值分析分析测试用例是:用例是:,X1X2dcba表示取极值表示取极值表示取非极值表示取非极值第五章第五章 边边界界值测试值测试安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院边界值分析边界值分析v例例如如,有有一一个个二二元元函函数数f(x,y),要要求求输入入变量量x,y分分别满足足:x 1,12,y 1,31。采采用用边界界值分分析析法法设计测试用例,可以用例,可以选择下面一下面一组测试数据:数据:v,。v对于于一一个个含含有有n个个输入入变量量的的程程序序,使使除除一一个个以以外外的的所所有
22、有变量量取取正正常常值,剩剩余余的的一一个个变量量依依次次取取最最小小值、略略大大于于最最小小值、正正常常值、略略小小于于最最大大值和和最最大大值,并并对每每个个变量量重重复复进行行。因因此此,对于于有有n个个输入入变量量的的程程序序,边界界值分分析析会会产生生4n+1个个测试用例。用例。第五章第五章 边边界界值测试值测试安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院边界值分析边界值分析v例如,例如,有一个三元函数有一个三元函数 f(x,y,z),其中,其中 x 0,100,y 1,12,z 1,31,v对该函函数数采采用用边界界值
23、分分析析法法设计的的测试用用例例将将会会得得到到13个个测试用例,根据用例,根据边界分析的原理,可得到下列界分析的原理,可得到下列测试数据:数据:,。第五章第五章 边边界界值测试值测试安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院边界值分析举例边界值分析举例第五章第五章 边边界界值测试值测试w三角形问题描述三角形问题描述 三条边三条边a,b,c取整数值,且各边的取值范围是:取整数值,且各边的取值范围是:1,200 w边界值分析设计测试用例边界值分析设计测试用例 每条边的取值:每条边的取值:1,2,100,199,200 测试用例数目
24、:测试用例数目:4n+1 三角形问题三角形问题(n=3);用例数为用例数为13安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院边界值分析举例边界值分析举例第五章第五章 边边界界值测试值测试安徽工程大学安徽工程大学安徽工程大学安徽工程大学计计算机与信息学院算机与信息学院算机与信息学院算机与信息学院边界值分析举例边界值分析举例第五章第五章 边边界界值测试值测试练习:练习:NextDate函数函数w输入条件入条件 1月份月份12 1日期日期31 1912 年年2051 w请用用边界界值分析分析设计测试用例用例安徽工程大学安徽工程大学安徽工程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 边界值测试 边界 测试 PPT 课件
限制150内