您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 软件测试技术基础-CH03
《软件测试技术基础》第3章苏州大学应用技术学院/931第3章黑盒测试3.1黑盒测试法概述3.2边界值测试3.3等价类测试3.4基于决策表的测试3.5错误推测法3.6其他黑盒测试方法本章小结练习题思考题《软件测试技术基础》第3章苏州大学应用技术学院/9323.1黑盒测试法概述黑盒测试原理任何程序都可以看作是从输入定义域映射到输出值域的函数过程。因此可把被测程序看成是一个未知内部结构和实现过程的黑盒子只需验证&确认其功能。黑盒测试又称为功能测试、数据驱动测试和基于规格说明的测试。黑盒测试除非采用穷举法才能检查出所有错误。《软件测试技术基础》第3章苏州大学应用技术学院/9333.1黑盒测试法概述黑盒测试目标验证&确认功能——先进行“通过测试”——输入合法数据。发现缺陷——后进行“失败测试”——输入非法数据。《软件测试技术基础》第3章苏州大学应用技术学院/9343.1黑盒测试法概述黑盒测试的内容检查程序功能是否按照需求规格说明书的规定正常使用。检测模块接口是否存在问题。检测程序初始化和终止方面的错误。其他相关的内容性能上是否能够满足要求?《软件测试技术基础》第3章苏州大学应用技术学院/9353.1黑盒测试法概述黑盒测试的具体技术方法边界值分析法等价类划分法决策表法错误推测法因果图法《软件测试技术基础》第3章苏州大学应用技术学院/9363.2边界值测试3.2.1边界值分析法3.2.2边界值分析法测试用例3.2.3边界值分析法测试实例3.2.4边界值分析局限性《软件测试技术基础》第3章苏州大学应用技术学院/9373.2.1边界值分析法基本原理程序可以看成是一个函数程序的输入构成函数的定义域程序的输出构成函数的值域输入变量(或输出变量)在边界值(极值)附近往往可发现错误。《软件测试技术基础》第3章苏州大学应用技术学院/9383.2.1边界值分析法1、边界值分析类型:数值、字符、位置、数量、速度、尺寸等。边界特征:第一个/最后一个、开始/结束、空/满……最大值/最小值、最快/最慢、最高/最低、最长/最短最早/最迟、最近/最远、最左/最右、最上/最下……月初/月末、年初/年末、全0/全1……《软件测试技术基础》第3章苏州大学应用技术学院/9393.2.1边界值分析法2、内部边界值分析内部边界条件或次边界条件往往要了解内部的数据结构才能获取相关信息。举例ASCII字符“0~9”、“A~Z”、“a~z”的边界:“/”“:”、“@”“[”、“`”“{”.日期:1900-1-0~9999-12-31的边界:0~29584652958465=8100*365+8100/4-8100/100+INT(8100/400+1)二进制数:0、2^8、2^16、2^20、2^24、2^30、2^320、256、32768、65536、1048576、16777216、1073741824、4294967296《软件测试技术基础》第3章苏州大学应用技术学院/9310ASCII码边界《软件测试技术基础》第3章苏州大学应用技术学院/9311二进制数边界项范围或值位(bit)0或1字节(byte)0~255字(word)0~65535(单字)0~4294967295(双字)千(K)1024兆(M)1048576吉(G)1073741824《软件测试技术基础》第3章苏州大学应用技术学院/93123.2.2边界值分析法测试用例基本思想许多程序可以看作是一个函数,程序的输入构成函数的定义域,程序的输出构成函数的值域。y=F(x)——x为输入变量;y为输出变量。程序输入范围和输出范围与函数x定义域、y值域的区别函数的定义域、值域不一定是有限范围;程序的输入、输出在一定的有限范围内才有实用意义。程序的输入范围和输出范围测试输入范围测试是边界值分析的——重要的内容;输出范围测试是边界值分析的——必要时补充。《软件测试技术基础》第3章苏州大学应用技术学院/93133.2.2边界值分析法测试用例程序的输入范围描述举例设两个变量x1和x2的函数F,变量x1和x2的边界:a≤x1≤b,c≤x2≤d区间[a,b]和[c,d]分别是x1和x2的有效取值范围。有效范围abcdx1x2《软件测试技术基础》第3章苏州大学应用技术学院/93143.2.2边界值分析法测试用例“单缺陷”假设失效往往是单个缺陷引起的,由两个或多个缺陷同时发生而引起的失效概率较小。“单缺陷”假设下变量x1和x2的取值x1=x1nom时,x2的取值分别为x2min,x2min+,x2nom,x2max-,x2maxx2=x2nom时,x1的取值分别为x1min,x1min+,x1nom,x1max-,x1max其中min——表示最小值min+——表示略高于最小值(min-表示略低于最小值)nom——表示正常值max-——表示略低于最大值(max+表示略高于最大值)max——表示最大值《软件测试技术基础》第3章苏州大学应用技术学院/93153.2.2边界值分析法测试用例“单缺陷”假设下的边界值对于一个n变量函数,边界值分析需要设计的测试用例数NN=4n+1当n=2时,N=9;当n=3时,N=13;有效范围abcdx1x2《软件测试技术基础》第3章苏州大学应用技术学院/93163.2.2边界值分析法测试用例“单缺陷”假设下健壮性测试用例数的举例x1=x1nom时,x2的取值分别为x2min-,x2min,x2min+,x2nom,x2max-,x2max,x2max+x2=x2nom时,x1的取值分别为x2min-,x1min,x1min+,x1nom,x1max-,x1max,x1max+对于一个n变量函数,边界值分析(健壮性测试时)需要设计的测试用例数N:N=6n+1当n=2时,N=13;当n=3时,N=19;《软件测试技术基础》第3章苏州大学应用技术学院/93173.2.2边界值分析法测试用例“单缺陷”假设下健壮性测试的取值举例当n=2时,N=?;有效范围abcdx1x2《软件测试技术基础》第3章苏州大学应用技术学院/93183.2.2边界值分析法测试用例“多缺陷”情况(最坏情况)的测试用例数所有变量均可取最小值(min)、略高于最小值(min+)、正常值(nom)、略低于最大值(max-)、最大值(max)这五个元素中的任何一个。n变量所需要设计的测试用例数:——5^n“多缺陷”情况(最坏情况)的健壮性测试n变量所需要设计的测试用例数:——7^n《软件测试技术基础》第3章苏州大学应用技术学院/93193.2.2边界值分析法测试用例“多缺陷”情况的测试用例数图示n=2时,N=?有效范围abcdx1x2有效范围abcx1《软件测试技术基础》第3章苏州大学应用技术学院/93203.2.3边界值分析法测试用例边界值分析从输出范围的考虑对单变量输出的情况测试用例数量同输入范围的考虑一样,但输入范围要根据函数F的反函数F-1确定:x=F-1(y)在多变量情况下,求xi输入范围有时比较困难。多变量输出的情况测试用例数量N与输出变量y的个数n有关,且输入范围要根据函数F来确定可能显得更为复杂。必要时可设计一定测试用例作为补充。《软件测试技术基础》第3章苏州大学应用技术学院/93213.2.3边界值分析法测试用例举例1、三角形问题问题描述程序输入:三个整数a、b、c,代表三角形的三条边。a,b,c必须满足以下条件:C1.1=a=100;C2.1=b=100;C3.1=c=100;C4.ab+c;C5.ba+c;C6.ca+b程序输出:由这三条边确定的三角形类型等边三角形等腰三角形不等边三角形非三角形《软件测试技术基础》第3章苏州大学应用技术学院/9322三角形问题测试用例(单缺陷+输出)用例编号abc预期输出150(nom)50(nom)50(nom)等边三角形250(nom)50(nom)2(min+)等腰三角形350(nom)50(nom)1(min)等腰三角形450(nom)50(nom)99(max-)等腰三角形550(nom)50(nom)100(max)非三角形650(nom)2(min+)50(nom)等腰三角形750(nom)1(min)50(nom)等腰三角形850(nom)99(max-)50(nom)等腰三角形950(nom)100(max)50(nom)非三角形102(min+)50(nom)50(nom)等腰三角形111(min)50(nom)50(nom)等腰三角形1299(max-)50(nom)50(nom)等腰三角形13100(max)50(nom)50(nom)非三角形1440(nom)50(nom)60(nom)非等边三角形1520(nom)50(nom)80(nom)非三角形4n+1输出:~4《软件测试技术基础》第3章苏州大学应用技术学院/93233.2.3边界值分析法测试用例举例“多缺陷”情况(最坏情况)测试用例输入变量:a,b,c;n=3;测试用例数量:N=5^3=125讨论:在人工测试情况下,大量的测试用例会影响效果。在自动化测试情况下,可以扩大测试覆盖面。编号abc预期输出150(nom)50(nom)50(nom)等边三角形250(nom)50(nom)2(min+)等腰三角形350(nom)50(nom)1(min)等腰三角形……………………5050(nom)2(min+)2(min+)非三角形5150(nom)1(min)1(min)非三角形5250(nom)2(min+)1(min)非三角形5350(nom)1(min)2(min+)非三角形……………………1002(min+)2(min+)2(min+)等边三角形1012(min+)2(min+)1(min)等腰三角形1022(min+)1(min)2(min+)等腰三角形……………………5^3=125《软件测试技术基础》第3章苏州大学应用技术学院/93243.2.3边界值分析法测试用例举例2、NextDate函数问题描述程序输入:三个变量(月、日、年)表示某个日期变量月份、日期和年都为整数,且满足以下条件:C1.1=月份=12C2.1=日期=31C3.1912=年=2050程序输出:输入日期后面的下个日期。异常情况:月份、日期和年有超出范围现象;输入日期不符合日历规定。如:2月30日,11月31日等。《软件测试技术基础》第3章苏州大学应用技术学院/9325NextDate函数测试用例(健壮性测试)用例编号月
本文标题:软件测试技术基础-CH03
链接地址:https://www.777doc.com/doc-1991600 .html