文档库 最新最全的文档下载
当前位置:文档库 › 第七章 用等价类和边界值方法设计测试用例

第七章 用等价类和边界值方法设计测试用例

前一日问题边界值测试用例

前一日问题项目 系统测试用例说明书 日期版本说明作者 关于项目的系统测试用例说明

目录 1引言 (3) 1.1编写目的 (3) 1.2背景 (3) 1.3定义 (3) 1.4参考资料 (3) 2功能测试用例 (4) 2.3管理员测试用例 (4) 2.3.1 被测特性 (4) 2.3.2 A1.1添加用户测试用例 (4) 测试需求 (4) A1.1.1 (4)

1引言 1.1编写目的 本文档为前一日问题的系统测试活动提供范围、方法、资源和进度方面的指导。预期的读者范围包括: ●项目经理 ●测试人员 ●用户 1.2背景 前一日问题 1、编写函数实现前一日问题,并调试通过; 2、仿照第二日问题,基于独立性假设和单缺陷假设,设计边界值测试用例。 1.3定义 用户输入某个日期,函数应判断日期的有效性,若日期有效,则计算并 输出该日期的前一天日期,否则应给出相应的错误提示,例如日期不存在、日期不在函数处理范围内、或输入错误等。注意:函数能接受的日期范围为:从1600年x月y日开始,到2013年x月y日截止(含起始和结束日期),其中,x月y日是每个同学各自的阳历生日。 1.4参考资料 序号标题文件名称发表日期资料来源 1 软件需求规格说明软件需求规格说明书 _1.0.0802.doc 项目小组设计得到 2 界面设计界面设计说明书 _1.0.0727.doc 项目小组设计得到 3 系统测试计划系统测试计划 _1.0.0802.doc 项目小组制定

2功能测试用例 2.3管理员测试用例 2.3.1 被测特性 管理员用户(Admin)的被测功能特性如下表所示。 SRS功能编号测试项编号内容测试优先级 1.1 A1.1 输入日期查看结果高 2.3.2 A1.1添加用户测试用例 测试需求 测试需求如下表所示。 序号测试需求优先级A1.1.1 输入日期,且输入全部有效,成功输出结果高A1.1.2 输入日期,且输入年份无效,系统警告中A1.1.3 输入日期,且输入月份无效,系统警告中A1.1.4 输入日期,且输入日份无效,系统警告中A1.1.5 输入日期,且输入年月日全部无效,系统警告低(其余略) 边界值测试 测试用例如A1.1.1 A1.1.1 测试需求A1.1.1 描述输入日期,且输入全部有效,成功输出结果

等价类与边界值练习题解

解答: 等价类 一、某程序规定:"输入三个整数 a 、 b 、 c 分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时,分别作计算… "。用等价类划分方法为该程序进行测试用例设计。(三角形问题的复杂之处在于输入与输出之间的关系比较复杂。) 分析题目中给出和隐含的对输入条件的要求: (1)整数(2)三个数(3)非零数(4)正数 (5)两边之和大于第三边(6)等腰(7)等边 如果 a 、 b 、 c 满足条件( 1 ) ~ ( 4 ),则输出下列四种情况之一: 1)如果不满足条件(5),则程序输出为 " 非三角形 " 。 2)如果三条边相等即满足条件(7),则程序输出为 " 等边三角形 " 。 3)如果只有两条边相等、即满足条件(6),则程序输出为 " 等腰三角形 " 。 4)如果三条边都不相等,则程序输出为 " 一般三角形 " 。 列出等价类表并编号

覆盖有效等价类的测试用例: a b c 覆盖等价类号码 3 4 5 (1)--(7) 4 4 5 (1)--(7),(8) 4 5 5 (1)--(7),(9) 5 4 5 (1)--(7),(10) 4 4 4 (1)--(7),(11) 覆盖无效等价类的测试用例:

二、设有一个档案管理系统,要求用户输入以年月表示的日期。假设日期限定在1990年1月~2049年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。现用等价类划分法设计测试用例,来测试程序的"日期检查功能"。 1)划分等价类并编号,下表等价类划分的结果 日期的类型及长度①6位数字字符②有非数字字符 ③少于6位数字字符 ④多于6位数字字符 年份范围⑤在1990~2049之间⑥小于1990 ⑦大于2049 月份范围⑧在01~12之间⑨等于00 ⑩大于12 2)设计测试用例,以便覆盖所有的有效等价类在表中列出了3个有效等价类,编号分别为①、 ⑤、⑧,设计的测试用例如下: 测试数据期望结果覆盖的有效等价类 200211 输入有效①、⑤、⑧ 3)为每一个无效等价类设计一个测试用例,设计结果如下: 测试数据期望结果覆盖的无效等价类 95June 无效输入② 20036 无效输入③ 2001006 无效输入④ 198912 无效输入⑥ 200401 无效输入⑦ 200100 无效输入⑨ 200113 无效输入⑩

测试用例编写之等价类划分法

测试用例编写之等价类划分法 一、概念 等价类划分法指把所有可能的输入数据,即程序的输入域分成若干个部分(子集)后,从每个子集中选取少数具有代表性的数据作为测试用例的方法。是一种重要且常用的黑盒测试的测试用例设计方法。 二、等价类划分 等价类可分为两种情况:有效等价类与无效等价类。有效等价类是指:对程序的规格说明是有意义的、合理的输入数据所构成的集合;无效等价类意义与之相反。 三、确定等价类的规则 如何确定等价类,这是使用等价类划分方法的一个重要问题。等价类的划分在很大程度上是试探性的,一般规则如下: 1)如果输入条件规定了取值的范围或取值的个数([0,99]),则可确定一个有效等价类和两个无效等价类(<0 ;[0,99];>99); 2)如果一个输入条件说明了一个“必须成立的”情况(如变量名必须以字母开头),则可划分一个有效等价类(以字母开头)和一个无效等价类(不以字母开头); 3)如果输入条件规定了输入数据的一组可能的值,而且程序是用不同的方式处理每一种值,则可为每一种值划分一个有效等价类,并划分一个无效等价类; 4)如果某个输入条件规定了一个输入值得离合(即离散值),且程序对不同的输入值做不同的处理,那么每个允许的值确定为一个有效等价类,另外还有一个无效等价类。(任意一个不允许输入的值、)例:优、良、中、差,则此时有4个有效等价类和1个无效等价类(非优、良、中、差的值就为无效) 5)如果某个输入条件规定输入数据是整型,那么可以确定3个有效等价类(正整数、零、负整数)和一个无效等价类(非整数)。 6)如果某个输入条件规定处理的对象是表格,那么可确定一个有效等价类(表有1项或多项)和一个无效等价类(空表)。 7)如果能够确知,已划分的某等价类中的各元素在程序中的处理方式是不同的,则应据此将此等价类进一步划分成更小的等价类。 四、建立步骤 根据已列出的等价类表,按以下步骤确定测试用例: 1) 为每个等价类规定一个唯一的编号; 2) 设计一个测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类,重复这一步,最后使得所有的有效等价类都被测试用例所覆盖;

三角形测试(测试用例)

三角形测试用例 题目:输入三个数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形是一般三角形、等腰三角形还是等边三角形时。用等价类划分方法为该程序设计测试用例。 在三角形计算中,要求三角形的三个边长:A B C。 1、当三边不可能构成三角形时提示错误,可构成三角形时计算三角形周长。 2、若是等腰三角形打印“等腰三角形”,若两个等腰的平方和等于第三边平方和,则打印“等腰直角三角形”。 3、若是等边三角形,则打印:“等边三角形”。 4、画出程序流程图并设计一个测试用例。 分析一下: 1、构成三角形的条件:任意两边之和大于第三边; 2、构成等腰三角形的条件:任意两边相等; 3、构成等腰直角三角形的条件:任意两边相等,而且两条边的平方和等于第三边的平方和; 4、构成等边三角形的条件:三条边都相等。 那么用什么样的设计方法进行测试用例的设计呢? 一、等价类划分:三角形三条边A、B、C的数据类型不同 二、边界值分析:由于三角形的边长可以是正整数或正小数,所以就不对长度进行测试,那么边界值分析就不用了 三、因果图法:三角形的三条边数据输入组合 我们看一下三角形的流程图: 注:改正一个小错误,在判断是否是等腰直角三角形中 A的平方=B的平方+C的平方。由于画图时,网络速度问题,导致真或假的值没有标注。 三角形等价类列表 判定类型有效等价类 无效等价类

一般三角形 ((a>0) Λ(b>0) Λ(c>0))Λ (a<=0 V b<=0 V c<=0) Λ (((a+b)>c) V ((a+c)>b) V ((b+c)>a)) (1) (((a+b)<=c) V ((a+c)<=b) V ((b+c)<=a)) (2) 等腰三角形 (1) Λ (a=b V a=c V b=c)(3) (2) V (a!=b Λ b!=c Λ a!=c) (4) 等边三角形 (1) Λ (a=b=c ) (5) (2) V (a!=b!=c)(6) 根据上表组成的测试用例: 三角形等价类测试用例 ID 输入数据覆盖测试用例输出结果 a b c 1 3 4 5 (1) 一般三角形 2 0 4 5 (2) 非(一般)三角形 3 3 0 5 (2) 4 3 4 0 (2) 5 1 4 5 (2) 6 3 8 5 (2) 7 3 2 1 (2) 8 3 3 5 (3) 等腰三角形 9 3 4 3 10 3 4 4 #include void main () {

等价类划分法实例

分析题目中给出和隐含的对输入条件的要求: (1)整数 (2)三个数 (3)非零数 (4)正数 (5)两边之和大于第三边 (6)等腰 (7)等边 如果 a 、 b 、 c 满足条件( 1 ) ~ ( 4 ),则输出下列四种情况之一: 1)如果不满足条件(5),则程序输出为 " 非三角形 " 。 2)如果三条边相等即满足条件(7),则程序输出为 " 等边三角形 " 。 3)如果只有两条边相等、即满足条件(6),则程序输出为 " 等腰三角形 " 。 4)如果三条边都不相等,则程序输出为 " 一般三角形 " 。 列出等价类表并编号 覆盖有效等价类的测试用例: a b c 覆盖等价类号码 3 4 5 (1)--(7) 4 4 5 (1)--(7),(8) 4 5 5 (1)--(7),(9) 5 4 5 (1)--(7),(10) 4 4 4 (1)--(7),(11) 覆盖无效等价类的测试用例: 2. 设有一个档案管理系统,要求用户输入以年月表示的日期。假设日期限定在1990 年1月~2049年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。现用等价类划分法设计测试用例,来测试程序的"日期检查功能 "。(不考虑2月的问题) 1)划分等价类并编号,下表等价类划分的结果

2)设计测试用例,以便覆盖所有的有效等价类在表中列出了3个有效等价类,编号分 别为①、⑤、⑧,设计的测试用例如下: 测试数据期望结果覆盖的有效等价类 200211 输入有效①、⑤、⑧ 3)为每一个无效等价类设计一个测试用例,设计结果如下: 测试数据期望结果覆盖的无效等价类 95June 无效输入② 20036 无效输入③ 2001006 无效输入④ 198912 无效输入⑥ 200401 无效输入⑦ 200100 无效输入⑨ 200113 无效输入⑩ 3.NextDate 函数包含三个变量:month 、 day 和 year ,函数的输出为输入日期 后一天的日期。例如,输入为 2006年3月 7日,则函数的输出为 2006年3月8日。 要求输入变量 month 、 day 和 year 均为整数值,并且满足下列条件: ①1≤month≤12 ②1≤day≤31 ③1920≤year≤2050 1)有效等价类为: M1={月份:1≤月份≤12} D1={日期:1≤日期≤31} Y1={年:1812≤年≤2012} 2)若条件① ~ ③中任何一个条件失效,则 NextDate 函数都会产生一个输出,指明相 应的变量超出取值范围,比如 "month 的值不在 1-12 范围当中 " 。显然还存在着大量的 year 、 month 、 day 的无效组合, NextDate 函数将这些组合作统一的输出: " 无效输入日期 " 。其无效等价类为: M2={月份:月份<1} M3={月份:月份>12} D2={日期:日期<1} D3={日期:日期>31} Y2={年:年<1812} Y3={年:年>2012} 弱一般等价类测试用例 月份日期年预期输出 6 15 1912 1912年6月16 日 强一般等价类测试用例同弱一般等价类测试用例

软件黑盒测试边界值分析

软件黑盒测试边界值分析 黑盒测试 黑盒测试注重于测试软件的功能性需求,也即黑盒测试使软件工程师派生出执行程序所有功能需求的输入条件。黑盒测试并不是白盒测试的替代品,而是用于辅助白盒测试发现其他类型的错误。 黑盒测试试图发现以下类型的错误: (1)功能不对或遗漏, (2)界面错误, (3)数据结构或外部数据库访问错误, (4)性能错误和 (5)初始化和终止错误。 白盒测试在测试的早期执行,而黑盒测试主要用于测试的后期。黑盒测试故意不考虑控制结构,而是注意信息域。 边界值分析 边界值分析也是一种黑盒测试方法,适度等价类分析方法的一种补充,由长期的测试工作经验得知,大量的错误是发生在输入或输出的边界上。因此针对各种边界情况设计测试用例,可以查出更多的错误。 1 选择测试用例的原则 一、如果输入条件规定了值的范围,则应该取刚达到这个范围的边界值,以及刚刚超过这个范围边界的值作为测试输入数据; 二、如果输入条件规定了值的个数,则用最大个数、最小个数、比最大个数多1格、比最小个数少1个的数做为测试数据;

三、根据规格说明的每一个输出条件,使用规则一; 四、根据规格说明的每一个输出条件,使用规则二; 五、如果程序的规格说明给出的输入域或输出域是有序集合(如有序表、顺序文件等),则应选取集合的第一个和最后一个元素作为测试用例; 六、如果程序用了一个内部结构,应该选取这个内部数据结构的边界值作为测试用例; 七、分析规格说明,找出其他可能的边界条件。 2 软件测试边界值法举例 找零钱最佳组合 假设商店货品价格(R)皆不大於100元(且为整数),若顾客付款在100元内(P),求找给顾客之最少货币个(张)数?(货币面值50元(N50),10元(N10),5元(N5),1元(N1)四种) 一、分析输入的情形 R>100 0100 R<=P<=100 P

ok等价类划分和边界值分析法实例

一、等价类划分法实例: 1.输入条件为某个范围的取值: 例: 在某大学学籍管理信息系统中,假设学生年龄的输入范围为16~40,则根据黑盒测试中的等价类划分技术,它的有效和无效等价类分别为? 2.输入条件为输入值的集合: 例: 假设PowerPoint打印输出幻灯片的页数分别为{1,2,3,6,9 },则根据黑盒测试中的等价类划分技术,它的有效和无效等价类分别为? 3.输入为BOOL变量,它的有效和无效等价类分别为? 4.输入条件中由若干规则组成,其中各个规则都是独立的:例: 一条输入的字符串中不能含有“#”和“&”两个特殊字符(其他字符都是合法的)的规则,它的有效和无效等价类分别为?5.输入条件由一个合法的规则组成: 例: 某个变量的取值必须为100,那么它的有效和无效等价类分别为? 6.为输入条件的组合关系划分等价类: 输入条件同时满足x>10和y<200两个判断表达式决定,那

么它的有效和无效等价类分别为? 二、边界值分析法实例: 1.大小范围边界 例: 若10≤x≤200,利用边界值分析法需要选择哪些测试数据? 若10

三角形问题的等价类测试用例

三角形问题的等价类测试用例 四种可能出现的输出:非三角形、不等边三角形、等腰三角形和等边三角形 可以使用这些输出标识如下所示的输出(值域)等价类: R1={〈a,b,c〉:有三条边a、b和c的等边三角形} R2={〈a,b,c〉:有三条边a、b和c的等腰三角形} R3={〈a,b,c〉:有三条边a、b和c的不等边三角形} R4={〈a,b,c〉:三条边a、b和c不构成三角形} 四个弱一般等价类测试用例是: 测试用例 a b c 预期输出 WN1 5 5 5 等边三角形 WN2 2 2 3 等腰三角形 WN3 3 4 5 不等边三角形 WN4 4 1 2 非三角形 由于变量a、b和c没有有效区间,则强一般等价类测试用例与弱一般等价类测试用例相同。 考虑a、b和c的无效值产生的以下额外弱健壮等价类测试用例: 测试用例 a b c 预期输出 WR1 -1 5 5 a取值不在所允许的取值值域内 WR2 5 -1 5 b取值不在所允许的取值值域内 WR3 5 5 -1 c取值不在所允许的取值值域内 WR4 201 5 5 a取值不在所允许的取值值域内 WR5 5 201 5 b取值不在所允许的取值值域内 WR6 5 5 201 c取值不在所允许的取值值域内以下是额外强健壮性等价类测试用例三维立方的一个“角”: 测试用例 a b c 预期输出 SR1 -1 5 5 a取值不在所允许的取值值域内 SR2 5 -1 5 b取值不在所允许的取值值域内 SR3 5 5 -1 c取值不在所允许的取值值域内 SR4 -1 -1 5 a、b取值不在所允许的取值值域内 SR5 5 -1 -1 b、c取值不在所允许的取值值域内 SR6 -1 5 -1 a、c取值不在所允许的取值值域内 SR7 -1 -1 -1 a、b、c取值不在所允许的取值值域内

等价类的定义

等价类划分 商品之间的等价交换 1、价值规律的基本内容 ①商品生产要遵循商品的价值量由社会必要劳动时间决定——商品的价值量 由生产商品的社会必要劳动时间决定。 ②商品交换要遵循等价交换原则——以价值量为基础,实行等价交换。 2、价值规律表现形式:价格受供求关系影响围绕价值上下波动。 ①价值规律的表现形式也称价值规律的实现形式和发生作用的形式。 ②等价交换是商品交换的一个重要原则。“等价”是指交换双方商品的价值都 要相等,即各自商品所消耗的社会必要劳动时间相等。货币出现以后,商品的价格却由货币来衡量,表现为价格。等价交换也就是要求商品的价格应该与价值相符合,因为价格由价值决定。 ③在现实生活中,价格与价值经常不一致,这是由商品的供求关系的变化引 起的,使价格上涨或下跌;反过来,价格的上涨或下跌也会影响供求关系,使供求趋于平衡,从而使价格接近价值。 ④由于价格与供求之间存在着相互制约的关系,这样就会产生以下情况: 第一:价格的上涨和下跌,都不会距离价值太远,它总是围绕价值上下波动。 第二:从一个较长时间来看,从全社会来看,商品的平均价格还是与它的价值相一致。 ⑤价格围绕价值上下波动表明:社会必要劳动时间决定价值量这一内容,始 终作为一种趋势,作为一个规律在贯彻着。所以,价值规律的表现形式不仅不违背规律,反而正是价值规律的表现形式,而且是唯一的表现形式。价值规律基本内容和表现形式是一致的,价格围绕价值上下波动就是价值规律基本内容的外在表现,价格和价值相符的本质,在实际交换中只能通过价格围绕价值波动这种形式才能实现。价格最终还是由价值决定。 等价类划分 等价类划分法是一种典型的、重要的黑盒测试方法,它将程序所有可能的输入数据(有效的和无效的)划分成若干个等价类。然后从每个部分中选取具有代表性的数据当做测试用例进行合理的分类,测试用例由有效等价类和无效等价类的代表组成,从而保证测试用例具有完整性和代表性。利用这一方法设计测试用例可以不考虑程序的内部结构,以需求规格说明书为依据,选择适当的典型子集,认真分析和推敲说明书的各项需求,特别是功能需求,尽可能多地发现错误。等价类划分法是一种系统性的确定要输入的测试条件的方法。由于等价类是在需求规格说明书的基础上进

等价类划分法及边界值分析法测试实验

黑盒测试实验 实验项目:等价类划分法及边界值分析法用例设计及Selenium工具实践 实验目的:1、根据产品规格说明书的要求,利用等价类划分法及边界值分析法设计测试用例;2、掌握使用Selenium工具进行黑盒测试的基本方法 实验要求:个人独立搭建测试平台、设计测试用例;使用Selenium工具录制脚本及组织测试套件。 实验过程(Windows7环境): 一、用等价类划分法和边界值分析法设计测试用例。 1.条件:产品规格说明书要求图书编号的取值位数是6~10位正整数 2.设计测试用例(建议将设计结果写在表格里) 二、测试平台的搭建 1.MySQL的安装。点击SETUP.EXE,按提示点击NEXT,注意跳过注册界面,进入配置界面 2.MySQL的配置:基本都取默认设置,要注意将字符集(Character Set)设置为GB2312并 记住登录密码。 3.创建MySQL数据库。①用记事本打开library.sql并复制文件内的所有SQL命令; ②点击开始菜单下的MySQL命令行客户端,输入登录密码后粘贴复制的SQL命令。4.用记事本修改文件夹library下的web.config,将其中密码pass改为你的MySQL登录密码。5.IIS的安装。控制面板→程序和功能→打开或关闭Windows功能→勾选Internet信息服务下的相关功能项→确定。 6.”大学图书管理系统”的安装。进入控制面板→管理工具→IIS管理器→右击”默认网站”,添加虚拟目录,并指定物理路径(即文件夹library所在路径),然后将该虚拟目录转换为应用程序。 7.火狐浏览器的安装。 8.测试工具Selenium的安装。打开火狐浏览器,将文件Selenium-ide-2.4.0.xpi拖进浏览器三、用Selenium进行脚本录制及套件组织 1.打开火狐浏览器,右击其标题栏勾选菜单栏 2.在”工具”菜单下找到并点击”Selenium-IDE”启动Selenium工具,并点击右上角”脚本录制”红按钮进入录制状态。 3.在浏览器地址栏输入http://localhost/abc/login.aspx ,输入用户名:admin ,密码:pass123正常登录后,保存为1个测试用例后,关闭Selenium-IDE然后再打开上述测试用例,之后将光标定在脚本末尾并让工具进入录制状态,将测试用例输入并保存。 4.重复3得到其他测试用例。 5.打开Selenium创建一个测试套件,并依次打开或添加已保存的测试用例并保存。

测试用例八大设计方法和实例

测试用例设计方法 1等价类划分 1.1 理论知识 等价类划分是一种典型的黑盒测试方法。这一方法完全不考虑程序的内部结构,只依据程序的规格说明来设计测试用例。 等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭示程序中的错误都是等效的。 等价类合理地假设:某个等价类的代表值,与该等价类的其他值,对于测试来说是等价的。 因此,可以把全部的输入数据划分成若干的等价类,在每一个等价类中取一个数据来进行测试。这样就能以较少的具有代表性的数据进行测试,而取得较好的测试效果。 等价类划分是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例.该方法是一种重要的,常用的黑盒测试用例设计方法. 1) 分类: 划分等价类: 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:有效等价类和无效等价类. 有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合.利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能. 无效等价类:与有效等价类的定义恰巧相反. 设计测试用例时,要同时考虑这两种等价类.因为,软件不仅要能接收合理的数据,也要能经受意外的考验.这样的测试才能确保软件具有更高的可靠性. 2)划分等价类的方法: 下面给出六条确定等价类的原则: ①在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类. ②在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效

等价类边界值综合练习题-万年历

练习题:万年历查询软件,要求用户输入以年月日表示的日期,然后系统会换算出该日期的农历表示法及相关黄历信息。假设日期限定在1900年1月1日~2049年12月31日,并规定日期由8位数字字符组成,前4位表示年,中间2位表示月,最后2位表示日期。其中4、6、9、11月只有30天,平年的2月份只有28天,闰年的2月份有29天。 (备注:为简化处理,本题在进行用例设计时,不必考虑对平年、闰年的判断)

一、先用等价类划分法设计测试用例,来测试程序的"日期检查功能"。1)划分等价类并编号,下表等价类划分的结果 2)设计测试用例覆盖所有的有效等价类,设计的测试用例如下: 3)为每一个无效等价类设计一个测试用例,设计结果如下:

4)测试用例举例: 5)存在的问题: 1、在对2月、大月、小月的无效日期进行用例选择时,日期没有取到边界上,如果程序忘记了对2月份的日期进行特殊判断,而是粗略写成所有的日期都必须小于等于28,那么用例9、用例10并不能发现错误。 2、在对大月、小月进行用例选择时,按照等价类的思想,从集合{1、 3、5、7、8、10、 12}和{4、6、9、11}中任意挑选了中间数据,感觉令人不够放心。 6)解决办法: 二、结合边界值方法进行用例设计。 首先还是利用等价类的方法进行用例设计,然后看看哪些边界值已经被覆盖到

了,最后再针对没有被覆盖的边界值补充测试用例。 设计测试用例覆盖等价类和边界值

可以再补充1月31日、11月30日的测试用例,因为1月是大月的第一个月,11月是小月的最后一个月,也可以算是边界值。 设计测试用例覆盖无效等价类:

1等价类边界值练习AG

1、在各种输入条件下,测试程序的登录对话框功能。 用户名和密码的规则如下: ?用户名长度为6至10位(含6位和10位) ?用户名由字符(a-z、A-Z)和数字(0-9)组成 ?不能为空、空格和特殊字符 密码规则同用户名规则 2、根据下面给出的规格说明,进行测试用例的设计。 一个程序读入3个正整数,把这三个数值看作一个三角形的3条边的长度值。这个程序要打印出信息,说明这个三角形是普通的、是等腰的、还是等边的。 3、万年历查询软件,要求用户输入以年月日表示的日期,然后系统会换算出该日期的农历表示法及相关黄历信息,假设日期限定在1900年1月1日~2049年12月31日,并规定日期由8位数字字符组成,前4位表示年,中间2位表示月,最后两位表示日期。其中 4、6、9、11月只有30天,平年的2月份只有28天,闰年的2月份有29天。(备注:位简化处理,本题进行用例设计时。不考虑对平年、闰年的判断 4、现有一个档案管理系统,容许用户通过输入年月对档案文件进行检索,系统对查询条件年月的输入限定为1990年1月~2049年12月,并规定:日期由6 20161;(2) 2016121;(3) 20160J;(4) 198908(6) 205008(7) 201600(9) 201613(10)

5、保险费率计算<=100岁 某保险公司承担人寿保险,该公司保费计算方式为投保额*保险率,保险率又依点数不同而有别,10点以上费率为0.6 %,10点以下费率为0.1% : 年龄:一或两位数字。 性别:以英文「MALE」、「FEMALE」、「M」、「F」表示。 婚姻:「已婚」、「未婚」。 扶养人数:空白或一位数字。 保险费率:10点以上,10点以下。 请对该案例进行相应的用例设计 6.农业银行ATM机提供现金存入异地银行的业务。存入金额为1000-50,000。以100元为单位。手续费为千分之五。最多只收取50元。

等价类划分法实例教学文案

等价类划分法实例

1.某程序规定:"输入三个整数 a 、 b 、 c 分别作为三边的边长构成三角形。通过程序 判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时,分别作计算… "。用等价类划分方法为该程序进行测试用例设计。(三角形问题 的复杂之处在于输入与输出之间的关系比较复杂。) 分析题目中给出和隐含的对输入条件的要求: (1)整数(2)三个数(3)非零数(4)正数 (5)两边之和大于第三边(6)等腰(7)等边 如果 a 、 b 、 c 满足条件( 1 ) ~ ( 4 ),则输出下列四种情况之一: 1)如果不满足条件(5),则程序输出为 " 非三角形 " 。 2)如果三条边相等即满足条件(7),则程序输出为 " 等边三角形 " 。 3)如果只有两条边相等、即满足条件(6),则程序输出为 " 等腰三角形 " 。 4)如果三条边都不相等,则程序输出为 " 一般三角形 " 。 列出等价类表并编号

覆盖有效等价类的测试用例: a b c 覆盖等价类号码 3 4 5 (1)--(7) 4 4 5 (1)--(7),(8)

4 5 5 (1)--(7),(9) 5 4 5 (1)--(7),(10) 4 4 4 (1)--(7),(11) 覆盖无效等价类的测试用例: 2.设有一个档案管理系统,要求用户输入以年月表示的日期。假设日期限定在1990年 1月~2049年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。现用等价类划分法设计测试用例,来测试程序的"日期检查功能"。(不考虑2月的问题) 1)划分等价类并编号,下表等价类划分的结果 输入等价类有效等价类无效等价类

边界值测试

“三角形问题”边界值测试

“日期处理”边界值测试判断闰年 计算下一天 计算上一天

测试结果中1990年1月28日的上一天在显示结果中没有显示,截图如下: 分析原因:在程序中计算上一天的函数中对于当月份等于1是只考虑了1月份的第1日,而忘记考虑1月份的其他日期,所以导致当输入1月28日时没有出现上一日的结果。 计算星期几

离生日12月31日的天数

佣金计算”边界值测试 实验总结: 此次的实验主要是对三角形问题,日期处理问题,佣金计算问题的程序分别进行边界值测试,在实验中,我对自己的三个程序分别进行了一般边界值测试,三角形问题中通过对设计用例的测试结果显示预测输出和测试结果全部符合没有出现问题,在日期处理问题中,计算上一日的过程中1900年1月28日的测试结果与预期结果有不同,程序中出现了错误,通过分析,由于对1月份的处理过程中没有对1月份的除第一日以外的其他的值进行处理,所以出现了错误,其他的测试结果与预期结果都是相符的。在佣金计算中,预期输出与测试结果都相符。通过此次的实验我学会了对于一般边界值测试的分析方法及过程,在测试过程开始之前要先对参数进行范围的确定,然后根据一般边界值测试的方法和参数设计用例。 通过实验总结的一般边界值测试法的优缺点: 优点:通过对测试结果的分析,可以更准确的知道错误点,能够更快的确定程序中由于什么错误而导致了结果与预期的输出不相符。同时测试的用例较少但是能够基本的找出程序中的错误。 缺点:测试用例不够全面,只能找到程序中的基本错误,不能够全面的对程序进行测试分析。测试用例对于程序的结构分析不能起到很好的指导作用。

边界值法练习题

1.请用边界值分析法设计三角形问题的测试用例 2.在三角形问题描述中,除了要求边长是整数外,没有给出其它的限 制条件。在此,我们将三角形每边边长的取范围值设值为[1, 100] 。边1,边2,边3,还是a、b、c 按钮名称【提交】。 边界值:0,1,2,99, 100, 101

2.请用边界值分析法写出NextDate函数的测试用例 3.在NextDate函数中,隐含规定了变量mouth和变量day的取值范围为1≤mouth≤12和1≤day≤31,并设定变量year的取值范围为1912≤year≤2050 。 边界值:year 取 1911 1912 1913 1990 2049 2050 2051 mouth取 -1 1 2 11 12 13 day取 0 1 2 30 31 32 测试用例:

3.邮箱用户名:6~18个字符,包括字母、数字、下划线,以字母开头,用户名以字母或数字结尾,用户名中必须包含@符号,@符号后可以为数字、字母,邮箱以或或.结尾

根据要求可以确定5个有效等价类和6个无效等价类 邮箱用户名测试用例:

等等(8)(9)(10)(11)任意两个、三个、四个组合都是错误的邮箱用户名。 4. 假设商店货品价格(R) 都不大于100元(且为整数),若顾客付款(P)在100元内,现有一个程序能在每位顾客付款后给出找零钱的最佳组合(找给顾客货币张数最少)。假定此商店的货币面值只包括:50元(N50)、10元(N10)、 5元(N5)、1元(N1) 四种。 请结合等价类划分法和边界值分析法为上述程序设计出相应的测试用例。 有效等价类: 0 < R < = 100 ,R<= P <= 100 R :货币价格 无效等价类:R > 100 or R<=0 ,p>100 or p 100 or R<=0 ,

等价类测试案例

等价类划分 等价类划分法是一种典型的、重要的黑盒测试方法,它将程序所有可能的输入数据(有效的和无效的)划分成若干个等价类。然后从每个部分中选取具有代表性的数据当做测试用例进行合理的分类,测试用例由有效等价类和无效等价类的代表组成,从而保证测试用例具有完整性和代表性。利用这一方法设计测试用例可以不考虑程序的内部结构,以需求规格说明书为依据,选择适当的典型子集,认真分析和推敲说明书的各项需求,特别是功能需求,尽可能多地发现错误。 由于等价类是在需求规格说明书的基础上进行划分的,并且等价类划分不仅可以用来确定测试用例中的数据的输入输出的精确取值范围,也可以用来准备中间值、状态和与时间相关的数据以及接口参数等,所以等价类可以用在系统测试、集成测试和组件测试中,在有明确的条件和限制的情况下,利用等价类划分技术可以设计出完备的测试用例。这种方法可以减少设计一些不必要的测试用例,因为这种测试用例一般使用相同的等价类数据,从而使测试对象得到同样的反映行为。对于等价类我们从以下几个方面讨论它的划分方法。 有效等价类划分 有效等价类指对于程序规格说明来说,是合理的、有意义的输入数据构成的集合。利用有效等价类可以检验程序是否实现了规格说明预先规定的功能和性能。有效等价类可以是一个,也可以是多个,根据系统的输入域划分若干部分,然后从每个部分中选取少数有代表性数据当做数据测试的测试用例,等价类是输入域的集合。 无效等价类划分 无效等价类和有效等价类相反,无效等价类是指对于软件规格说明而言,没有意义的、不合理的输入数据集合。利用无效等价类,可以找出程序异常说明情况,检查程序的功能和性能的实现是否有不符合规格说明要求的地方。 等价类划分的方法有 按区间划分。 按数值划分。 按数值集合划分。 按限制条件或规划划分。 按处理方式划分。 等价类划分的原则如下:

实验二 等价类划分法测试用例设计与执行

实验二 实验的目的和要求: 目的: (1)掌握等价类划分方法的步骤; (2)扩宽测试思维; 要求:能够用等价类划分的思想设计测试用例 实验内容: 问题陈述: 简单版本:三角形问题接受三个整数a、b和c作为输入,用作三角形的边。程序的输出是由这三条边确定的三角形类型:等边三角形、等腰三角形、不等边三角形或非三角形。改进版本:三角形问题接受三个整数a、b和c作为输入,用作三角形的边。整数a、b和c必须满足以下条件: c1:1<=a<=200 c4: a

为“非三角形”。如果三条边相等即满足条件(7),则程序输出为“等边三角形”。如果只有两条边相等、即满足条件(6),则程序输出为“等腰三角形”。如果三条边都不相等,则程序输出为“一般三角形”。

二、设计测试用例

import java.io.*; class sanj{ public static int a,b,c; public static void main(String arg[]) throws IOException{ try{ BufferedReader stdin=new BufferedReader(new InputStreamReader(System.in)); //接收键值System.out.println("输入三边值,每个值输入后回车"); System.out.println("请输入:"); a=Integer.valueOf(stdin.readLine()); b=Integer.valueOf(stdin.readLine()); c=Integer.valueOf(stdin.readLine()); }catch(IOException e){ System.out.println("出现异常!"); System.exit(0); } if(a+b

软件测试 边界值测试 实验报告

武 夷 学 院 实验报告 数学与计算机系 课程名称: 软件测试 实验题目: 边界值测试 学生班级: 09级计科一班 学生姓名: 学生学号: 200940110 指导教师: 刘靖 完成日期: 2011.10.11

实验二边界值测试 一、实验目的 通过本次实验使学生熟悉黑盒测试的边界值测试方法,并初步具备针对功能的测试用例设计。 二、实验环境 硬件环境:微型计算机。 软件环境:Windows 操作系统,Microsoft V isual Studio 2005等。 三、实验内容 题目一:三角形问题 输入三个整数a、b、c,分别作为三角形的三条边,通过程序判断这三条边是否能构成三角形?如果能构成三角形,则判断三角形的类型(等边三角形、等腰三角形、一般三角形)。要求输入三个整数a、b、c,必须满足以下条件:1≤a≤200;1≤b≤200;1≤c≤200。 题目二:找零钱最佳组合问题 假设商店货品价格(R)皆不大于100 元(且为整数),若顾客付款在100 元内 (P) ,求找给顾客最少货币个(张)数?(货币面值50 元10 元,5 元,1 元四种)1.请用针对输入域的边界值分析法对三角形问题设计测试用例,并将这次测试和三角形问题的第一次测试做一下比较分析。 2.请用针对输出域的边界值分析法对找零钱最佳组合问题设计测试用例,并将这次测试和找零钱最佳组合问题的第一次测试做一下比较分析。 四、实验步骤 1.针对输入域用边界值分析法对三角形问题设计测试用例 用边界值分析法设计测试用例,按照下列步骤进行: (1)分析各变量取值 (2)测试用例数 (3)设计测试用例边界值测试方法设计测试用例 (4)执行测试用例,记录测试结果,报告发现的问题 (5)将这次测试和三角形问题的第一次测试做一下比较分析。

测试用例设计方法1——等价类边界值

测试用例设计方法1——等价类边界值 1、等价类划分 等价类划分是黑盒测试最常用的方法,使用等价类划分的方法是将输入域划分为若干个区域,并从中选择少数具有代表性的数据进行测试,这样可以避免使用大量的测试数据,也避免了盲目性。等价类划分针对程序的输入部分,常用的设计方法是:找出输入条件,划分等价类,并进行用例的设计。等价类分为有效等价类和无效等价类。所谓有效等价类是指用户输入的有效数据,并得到预期的或正常的结果;另一种是无效等价类,无效等价类是指异常的或不符合规定的输入,相应的也会得到异常的输出或提示信息。因此在划分等价类的时候又从有效和无效两方面去考虑。一般在设计测试用例时,要是一条用例尽量多的覆盖有效等价类,而无效等价类则要求一对一的覆盖。 2、边界值 边界值同样是一种经典的黑盒测试方法,他常常作为等价类的一种补充,与等价类方法一起使用。在进行程序设计时,大量的错误容易发生在输入数据或输出数据的边界上,因此使用边界值的方法可以经常检测出错误。当一个输入明确的规定了一个值的取值范围时或输入条件是一组有序的集合时,就可以使用边界值的方法来设计测试用例。关于边界值得上点、内点、离点的概念,可以参见下图。

由于等价类和边界值经常配合使用,因此两者可以合并为一个用例设计方法,下面总结一下使用等价类边界值设计测试用例的思路和方法。 1、分析需求,挖掘隐式条件,确认边界值,划分等价类 2、将划分出的等价类填入表格,进行编号 3、对有效等价类,用一条用例尽量多的覆盖 4、对于无效等价类,一对一的覆盖,最终得到测试用例 下面以最经典的三角形问题来说明如何使用等价类边界值方法设计测试用例: 输入3个数,判定是否构成三角型,并判定什么时候是等腰三角形,什么时候是等边三角形。 分析输入条件: 1、3个整数 2、任意两边和大于第三遍 3、满足1、2,且只有两个边相等

等价类和边界值

等价类和边界值 等价性划分:选择输入,输出,动作,环境,或者你感兴趣的因素,对这些因素进行分类,系统应该对每一类中的因素进行等价处理。我们选择的测试应该至少代表了每个类中的一个选项。当选择存在某种有意义的顺序,等价类中就会存在边界值。 整数: 假设输入允许的最大数量为99,那么等价类和边界值如下: 在有效的数量类里面,也可能存在两个子类,可能允许输入千位分隔符。这只有当你允许数目可以数以千计时才有意义。 如果说输入65536可以,为什么65537不可以。由于依赖于计算机表示而迫使产生了边界值。尤其是最大的边界。这样,我们完全可以分析出两个无效的等价类。数量过少,数量过多。那么最低的有效值减1和最高有效数量加1都是你的边界值。对于卖东西而言。0是典型的边界值,卖出1包槟榔是有意义的,卖出0包则没意义。对于随行人数而言,随行人数0又是有意义的, 我们在设计时,考虑系统应该显示的业务行为。一个合理的用户期待是什么样子的,以此来设计测试,覆盖这些行为。 实数: 对于实数而言,整数的例子可以直接借用,这里我们需要考虑的问题是一个数值的最小差值是多少。在测试我们酒店管理系统时,一个可能的用例是用户提交申请查看账务信息。 为了识别等价类和边界值,我们必须知道我们的差值幅度是多少,在实际中,我们保存的为0.01.那么有效等价类 为什么我把有效等价的又分成了三个子类。比0小的,比0大的,和0,这样就造成了位于0和接近0的边界值。很多时候奇怪的事情发生在0,如果程序员忘记在做除法时检查0值会怎么样。空值有的时候在计算时被处理成0.所以,在一个数值中检查位于或者接近0这样做是很值得的。 输入过多的小数位数也是无效等价类,使用了错误的千位或者小数分隔符的无效等价类,输入两个小数分隔符或者千位分隔符。 我们在测试中,要仔细的观察和使用常识。这样会发现很多有趣的缺陷。在酒店管理系统中,对于money输入,精确到两位小数可能没意义。但是在会计上,银行记账来说,两位小数精确度可能还不能满足要求。在使用美元的国家,1美分是存在的,这样就引发一个问题。我们在测试的时候看到数字域我们自然想到单位。单纯的1是无法度量的。 到此我们可以设计测试时的三个可能缺陷 1,给客户显示了一个无用的精度,比如在报表中数字默认为9位, 2,显示的数字精度超出了实际的准确度。比如在餐饮中显示出四位小数 3,没有指定单位

相关文档
相关文档 最新文档