您好,欢迎访问三七文档
于艳华、王素华一、等价类1、等价类定义等价类划分法是黑盒测试的典型方法,是指某个输入域的子集合。在该集合中,各个输入数据对于揭露程序中的错误都是等效的。有效等价类:符合《需求规格说明书》,合理地输入数据集合。无效等价类:不符合《需求规格说明书》,无意义地输入数据集合。2、等价类划分的步骤(1)先考虑输入数据的数据类型(合法类型和非法类型)(2)再考虑数据范围(合法类型中的合法区间和非法区间)(3)画出示意图,区分等价类。(4)为每一个等价类编号。(5)从一个等价类中选举一个测试数据构造测试用例。一、等价类划分法划分等价类最重要的是集合的划分。集合要划分为互不相交的子集,而子集的并是整个集合。确定等价类的原则如下:(1)如果规定了输入值的范围(闭区间),可以分为一个有效等价类,两个无效等价类,如1x100,则有效等价类为“1x100”,无效等价类则为输入范围两边的值。(2)如果输入是布尔表达式,可以分为一个有效等价类和一个无效等类,如要求密码非空,则有效等价类为非空密码,无效等价类为空密码。(3)如果在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确定一个有效等价类和一个无效等价类。一、等价类划分法(4)在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确定n个有效等价类和一个无效等价类。(5)在规定了输入数据必须遵守的规则的情况下,可确定一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。一、等价类划分法输入域分成了一个有效等价类(1到100之间)和两个无效等价类(小于1和大于100),将这些等价类填入下表中:测试用例ID所属等价类用户输入数量预期结果11-9提示“请输入1~100之间的整数”2287成功购物33189提示“请输入1~100之间的整数”一、等价类举例输入三个整数A,B,C,输出以A,B,C为边的三角形面积,(1=A,B,C100),要求结果保留两位小数.格式如下:序号所属等价类输入数据预期结果1无效等价类a=1,b=2,c=1提示”3边不能构成三角形”一、等价类划分法1100输入分区图--------等价类划分法[1]无效等价类1[2]有效等价类1~100之间[3]无效等价类100等价类与边界值的区别1)边界值分析不是从某等价类中随便挑一个做为代表,而是使这个等价类的每个边界都要做为测试条件。2)边界值分析不只考虑输入条件,还要考虑输出空间产生的测试情况。3)边界值分析方法的考虑:长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范畴的边界上,而不是发生在输入输出范畴的内部。因而针对各种边界情况设想测试用例,能够查出更多的错误。使用边界值分析方法设想测试用例,首先应确定边界情况。通常输入和输出等价类的边界,就是应着重测试的边界情况。应当选取正好等于,刚刚大于或刚刚小于边界的值做为测试数据,而不是选取等价类中的典型值或任意值做为测试数据。二、边界值法边界值分析法是一种非常实用的测试用例设计技术,但在白盒测试中也应用到了边界值的测试思想。边界值法具有很强的发现程序错误的能力,它的测试用例来自于等价类的边界。大量测试工作的经验会告诉我们,大量的错误发生在输入或输出范围的边界上,而不是输入或输出范围的内部。边界值分析就是假定错误发生在输入或输出区间的边界上,因此使用jjjj边界值法设计测试用例,可以发现更多的错误。在使用边界值法设计测试用例时,应该首先确定好输入边界和输出边界情况,然后选取正好等于、刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。二、边界值法一般情况下,可以遵循以下几个原则来设计测试用例:1)如果输入条件规定了值的范围,应取刚达到这个范围的边界值,以及刚刚超过这个范围边界的值作为测试输入的数据。2)如果输入条件规定了值的个数,应用最大个数、最小个数、比最小个数少一、比最大个数多一的数作为测试输入的数据。3)根据每个输入条件,使用规则一或二。4)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例数据。二、边界值法5)如果程序中使用了一个内部数据结构,应当选择这个内部数据结构的边界上的值来作为测试用例。6)分析规格说明,找出其他可能的边界条件。下面举个例子让大家更深入地理解边界值法。用户登录网上购物系统要购买某种商品,假设该商品剩余数量为100件,且用户只会输入整数,(如果没有这条说明,那还可能输入小数,字母,空格等)则用户只能购买1-100范围内的商品件数。使用边界值法设计测试用例,测试用户输入商品数量Q后,系统反应是否合乎标准。二、边界值法1100输入分区123456图------边界值分析边界及测试用例提出边界时,一定要测试邻近边界的合法数据,即测试最后一个可能合法的数据,以及刚刚超过边界的非常数据。越界测试通常简单地加1或者用最小的数减1。二、边界值法我们可以考虑商品数量Q的输入区间:(1)Q1(2)Q=1(3)1Q100(4)Q=100(5)Q100根据上面的分析可以设计六个用例:(1)TestCase1:输入0,返回错误信息“您必须输入大于等于一个数量值”。(2)TestCase2:输入1,页面正确运行。(3)TestCase3:输入2,页面正确运行。二、边界值法(4)TestCase4:输入99,页面正确运行。(5)TestCase5:输入100,页面正确运行。(6)TestCase6:输入101,返回错误信息“您所选购的商品数量仅剩100件”。测试员可以将上面的信息填入用例设计表格中,形成标准的测试用例。请用等价类和边界值方法编写企业新闻发布信息管理系统用户登录模块的测试用例,如图1所示。注意,登录的用户名由大小写字母、数字组成,长度限制为3-12,并且用户名不能为空。用户密码输入区分大小写。知识点:测试用例、测试方法请用等价类和边界值方法编写163邮箱注册模块(简化版)的测试用例(假设没有重复的用户名),如图1所示。请注意带*的项目必须填写。五、边界值法TestCase004:输入字符数大于域允许的最大字符数Summary:检验系统是否对域输入长度进行了验证Steps:1、在浏览器的地址栏中输入访问“网上购物系统”的url,点击[转到]按钮;2、点击[注册]按钮;3、在“用户注册”界面中将以下信息复制到相应的输入框中:用户名:seven20081119姓名:sevenvilsce9密码:11111111119确认密码:11111111119联系电话:1264-0100-888888888-12349邮编:0123456789129邮寄地址:01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567899点击[注册]按钮;ExpectedResults:1、弹出“网上购物系统”主页;2、弹出“用户注册”界面;3.1预期一:复制信息时,系统自动将信息截断,并弹出提示信息“您输入的信息超长,系统已自动为您截断”;3.2预期二:点击[注册]按钮后,系统弹出提示信息“您输入的部分内容已超过系统允许输入的最大字符数,请重新输入”。关闭提示信息后,相关内容已用突出的颜色(如:红色)或者图标(如:“x”)标识出来了。边界值法Pass/Fail:TestNotes:Authoradmin三、错误推测法2、错误推测法错误推测法就是根据经验和直觉推测程序中所有可能存在的各种错误,从而有针对性地设计测试用例的方法。使用错误推测法时,可以凭经验列举出程序中所有可能有的错误和容易发生错误的特殊情况,帮助猜测错误可能发生的位置,提高错误猜测的有效性,根据他们选择测试用例。例如:输入表格为空格;输入数据和输出数据为0的情况。三、错误推测法TestCase013:密码显示校验Summary:检验系统是否对密码的显示方式做了处理Steps:1、在浏览器的地址栏中输入访问“网上购物系统”的url,点击[转到]按钮;2、点击[注册]按钮;3、在“用户注册”界面输入以下注册信息:用户名:三木姓名:seven密码:111111确认密码:111111ExpectedResults:1、弹出“网上购物系统”主页;2、弹出“用户注册”界面;3、密码和确认密码,均未显示明文。错误推测法Pass/Fail:TestNotes:Authoradmin四、场景法场景是通过描述流经用例的路径来确定的过程,这个流经过程要从用例开始到结束遍历其中所有基本流和备选流。场景法就是根据这些基本流和备选流的流动过程设计测试用例。目前的软件几乎都是由事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果形成事件流。这种在软件设计方面的思想也可被引入到软件测试中,生动的描绘出事件触发时的情景,有利于测试设计者设计测试用例,同时测试用例也更容易的得到理解和执行。提出这种测试思想的是Rational公司。四、场景法下面使用网上购物系统的购物场景举例说明。(1)场景描述用户进入网上购物系统网站进行购物,选好物品后进行购买,这时需要使用账号登录,登录成功后付款,交易成功后生成订单,完成此次购物活动。(2)使用场景法设计测试用例①确定基本流和备选流事件四、场景法基本流登录网上购物系统网站,选择物品,登录帐号,付钱交易,生成订单备选流1账号不存在备选流2账号或密码错误备选流3用户账号余额不足备选流4用户账号没有钱备选流5用户退出系统四、场景法②根据基本流和备选流来确定场景场景1-成功购物基本流场景2-账号不存在基本流备选流1场景3-账号或密码错误基本流备选流2场景4-用户账号余额不足基本流备选流3场景5-用户账号没有钱基本流备选流4四、场景法③设计用例对每一个场景都要做测试用例,可以使用矩阵(表格)来管理用例。用行表示各个测试用例,列表示测试用例的信息。首先将测试用例的ID、条件、涉及的数据元素以及预期结果列在矩阵中,然后将这些数据确定下来,填写在表格中。下表中,“有效”表示这个条件必须是有效的才可执行基本流,而“无效”用于表示这种条件下将激活所需备选流。“不适用”表示这个条件不适用于测试用例。七、场景法测试用例信息表测试用例ID场景/条件账号密码用户账号余额预期结果1场景1:成功购物有效有效有效成功购物2场景2:账号不存在无效不适用不适用提示账号不存在3场景3:账号或密码错误(账号正确,密码错误)有效无效不适用提示账号或密码错误,返回基本流步骤34场景3:账号或密码错误(账号错误,密码正确)无效有效不适用提示账号或密码错误,返回基本流步骤35场景4:用户账号余额不足有效有效无效提示账号余额不足请充值6场景5:用户账号没有钱有效有效无效提示账号余额请充值七、场景法④设计上表测试用例数据,填入下表测试用例ID场景/条件账号密码用户账号余额预期结果1场景1:成功购物wangshPassw0rd193成功购物,用户账号余额正确2场景2:账号不存在song不适用不适用提示账号不存在3场景3:账号或密码错误(账号正确,密码错误)wangsh666666不适用提示账号或密码错误,返回基本流步骤34场景3:账号或密码错误(账号错误,密码正确)songpassw0rd不适用提示账号或密码错误,返回基本流步骤35场景4:用户账号余额不足wshpass0rd2提示账号余额不足请充值6场景5:用户账号没有钱sunxx8172170提示账号余额请充值七、场景法说明:执行每一步Steps时,请参照对应编号的ExpectedResults,得出测试结论TestCase001:必添项是否允许为空Summary:检验系统是否对必添项为空的情况做了必要的处理。Steps:1、在浏览器的地址栏中输入访问“网上购物系统”的url,点击[转到]按钮;2、点击[注册]按钮;3、在“用户注册”界面中什么都不输入,直接点击[注册]按钮;4、在“用户名”
本文标题:边界值和等价类
链接地址:https://www.777doc.com/doc-3381851 .html