基于边界值分析法的测试用例
测试用例的设计方案-边界值法例子

测试用例的设计-边界值法边界值分析也是一种黑盒测试方法,适度等价类分析方法的一种补充,由长期的测试工作经验得知,大量的错误是发生在输入或输出的边界上。
因此针对各种边界情况设计测试用例,可以查出更多的错误。
选择测试用例的原则:一、如果输入条件规定了值的范围,则应该取刚达到这个范围的边界值,以及刚刚超过这个范围边界的值作为测试输入数据;二、如果输入条件规定了值的个数,则用最大个数、最小个数、比最大个数多1格、比最小个数少1个的数做为测试数据;三、根据规格说明的每一个输出条件,使用规则一;四、根据规格说明的每一个输出条件,使用规则二;五、如果程序的规格说明给出的输入域或输出域是有序集合(如有序表、顺序文件等),则应选取集合的第一个和最后一个元素作为测试用例;六、如果程序用了一个内部结构,应该选取这个内部数据结构的边界值作为测试用例;七、分析规格说明,找出其他可能的边界条件。
边界值法举例找零钱最佳组合假设商店货品价格 (R) 皆不大於 100 元(且为整数),若顾客付款在 100 元内 (P) ,求找给顾客之最少货币个(张)数?(货币面值 50 元 (N50) , 10 元 (N10) , 5 元 (N5) , 1 元 (N1) 四种)一、分析输入的情形。
R > 1000 < R < = 100R <= 0P > 100R<= P <= 100P < R二、分析输出情形。
N50 = 1N50 = 04 > N10 >= 1N10 = 0N5 = 1N5 = 04 > N1 >= 1N1 = 0三、分析规格中每一决策点之情形,以 RR1, RR2, RR3 表示计算要找 50, 10, 5 元货币数时之剩余金额。
R > 100R <= 0P > 100P < RRR1 >= 50RR2 >= 10RR3 >= 5四、由上述之输入/输出条件组合出可能的情形。
函数边界值测试用例

函数边界值测试用例1.引言1.1 概述在软件开发过程中,函数边界值测试是一种重要的测试方法,用于检验函数在边界值及其附近的输入情况下的行为和稳定性。
边界值是指函数输入的最小值、最大值以及特殊边界条件下的取值,可能会导致函数产生异常或错误的情况。
函数边界值测试的目标是验证函数在边界值情况下是否能够正确地处理输入,确保函数在各种边界条件下都能返回正确的结果。
这种测试方法可以有效地发现并解决潜在的错误和异常情况,提高软件的质量和稳定性。
函数边界值测试是一种基于黑盒测试的测试方法,即只关注函数的输入和输出,而不考虑函数的内部实现细节。
通过选择适当的输入值进行测试,可以尽可能地覆盖不同的边界条件,从而检验函数的健壮性和可靠性。
在函数边界值测试中,需要确定和选择适当的边界值和测试用例,以确保能够有效地覆盖函数的边界情况。
通常情况下,边界值测试需要考虑函数的最小值、最大值、边界情况、特殊取值等。
通过设计多种测试用例,可以覆盖不同的边界条件,检测函数在不同情况下的行为。
本文将详细介绍函数边界值测试的概念和重要性,以及相关的方法和步骤。
我们将进一步探讨如何选择和设计合适的边界值和测试用例,并总结函数边界值测试的重要性和应用。
同时,我们还将提出进一步研究的方向和建议,以促进函数边界值测试在软件开发中的广泛应用和发展。
1.2 文章结构文章结构部分的内容如下:文章结构部分旨在向读者呈现本篇长文的整体框架和组织方式,以便读者在阅读过程中能够有条理地理解文章的内容和脉络。
本文的结构主要分为引言、正文和结论三个部分。
引言部分对文章的背景和目的进行了介绍。
在概述部分,我们简要介绍了函数边界值测试的概念和重要性,这为后续的内容铺垫了基础。
接着,我们详细描述了本文的结构,包括各个部分的主要内容和目标。
正文部分是本文的核心,主要介绍了函数边界值测试的方法和步骤。
在2.1部分,我们阐述了函数边界值测试的概念和重要性,包括为什么要进行函数边界值测试以及其对软件质量的影响。
等价类和边界值测试用例举例

等价类和边界值测试用例举例等价类和边界值测试是软件测试中常用的测试方法,能够有效地发现系统中的错误和问题。
在进行等价类和边界值测试时,需要将输入值划分为不同的等价类,并选择边界值进行测试。
下面将以某个电子商务网站的注册功能为例,列举10个符合题目要求的等价类和边界值测试用例。
1. 等价类测试用例:用户名- 等价类1: 用户名为空- 等价类2: 用户名长度小于3个字符- 等价类3: 用户名长度大于20个字符- 等价类4: 用户名包含非法字符(如特殊符号、空格等)- 等价类5: 用户名已存在2. 边界值测试用例:用户名- 边界值1: 用户名长度等于3个字符- 边界值2: 用户名长度等于20个字符- 边界值3: 用户名长度大于3个字符,小于20个字符3. 等价类测试用例:密码- 等价类1: 密码为空- 等价类2: 密码长度小于6个字符- 等价类3: 密码长度大于16个字符- 等价类4: 密码包含非法字符(如特殊符号、空格等)4. 边界值测试用例:密码- 边界值1: 密码长度等于6个字符- 边界值2: 密码长度等于16个字符- 边界值3: 密码长度大于6个字符,小于16个字符5. 等价类测试用例:邮箱- 等价类1: 邮箱为空- 等价类2: 邮箱格式不正确(缺少@或后缀不正确)- 等价类3: 邮箱已存在6. 边界值测试用例:邮箱- 边界值1: 邮箱长度等于5个字符- 边界值2: 邮箱长度等于254个字符- 边界值3: 邮箱长度大于5个字符,小于254个字符7. 等价类测试用例:手机号码- 等价类1: 手机号码为空- 等价类2: 手机号码格式不正确(长度不为11位或不以1开头) - 等价类3: 手机号码已存在8. 边界值测试用例:手机号码- 边界值1: 手机号码长度等于10位- 边界值2: 手机号码长度等于11位- 边界值3: 手机号码长度大于10位,小于11位9. 等价类测试用例:验证码- 等价类1: 验证码为空- 等价类2: 验证码不正确10. 边界值测试用例:验证码- 边界值1: 验证码长度等于3个字符- 边界值2: 验证码长度等于6个字符- 边界值3: 验证码长度大于3个字符,小于6个字符通过以上的等价类和边界值测试用例,可以覆盖到各种可能的输入情况,包括空值、边界值、非法字符等。
2.黑盒测试:边界值及测试用例设计

20 15 —20 16 学年第 2 学期软件测试技术课程实验报告学院:计算机科学技术专业:软件工程班级:软件二班姓名:吴德宁学号:041340217任课教师:刘玉宝实验日期:2016年 5 月9 日实验题目实验2、黑盒测试:边界值分析方法及设计测试案例实验目的1、掌握边界值的概念2、掌握边界值分析法的测试用例设计方法。
实验内容1、对于找零钱最佳组合问题运用边界值分析法设计测试用例,并执行测试,撰写实验报告。
实验步骤:假设商品总价为T,顾客付款为P①分析边界值。
分析输入情形:1.T无效:T<=02.T有效:T>0此种情况下考虑P:2_1.P无效:P<T (款不够支付)2_2.P有效:P>=T分析输出情形:考虑输出—找零个数这里是有效数据,关于“找给顾客值最少钱币张数”的有效值50:0/110:0/1/2/3/45 :0/11 :0/1/2/3/4分析规格中每一个决策情形:无效输入(不找零):T<=0(商品总价小于等于0错误)T>0 P<T(付款不够支付)输出相应错误有效输入(找零)T>0 P>T此时考虑的输出(Change=P-T假设计算正确,不考虑这种情况的无效输出)0<=Change<45<= Change <1010<= Change <5050<= ChangeChange:0、1、4、5、9、10、49、50、99②运用健壮性边界条件法设计测试用例,得到测试用例表(测试用例表格式同实验1)。
付款总价余额预期输出T1 -1 50 超出范围T2 0 50 不可能T3 100 50 50 1T4 101 50 超出范围T5 50 -1 超出范围T6 50 0 50 1T7 50 100 不可能T8 50 101 超出范围T9 50 51 不可能T10 60 59 1 1T11 72 23 49 9T12 85 75 10 1T13 80 71 9 5T14 95 90 5 1T15 55 51 4 4T16 60 60 0 0③执行测试,填写软件缺陷报告(软件缺陷报告格式同实验1)。
3.2.2-边界值分析法举例

3.2.2 边界值分析方法举例例1:成绩报告生成程序现有一个学生标准化考试批阅试卷,产生成绩报告的程序。
其规格说明如下:程序的输入文件由一些有80个字符的记录组成,如右图所示,所有记录分为3组:1) 标题:这一组只有一个记录,其内容为输出成绩报告的名字。
2) 试卷各题标准答案记录:每个记录均在第80个字符处标以数字"2"。
该组的第一个记录的第1至第3个字符为题目编号(取值为1一999)。
第10至第59个字符给出第1至第50题的答案(每个合法字符表示一个答案)。
该组的第2,第3……个记录相应为第51至第100,第101至第150,…题的答案。
3) 每个学生的答卷描述:该组中每个记录的第80个字符均为数字"3"。
每个学生的答卷在若干个记录中给出。
如甲的首记录第1至第9字符给出学生姓名及学号,第10至第59字符列出的是甲所做的第1至第50题的答案。
若试题数超过50,则第2,第3……纪录分别给出他的第51至第100,第101至第150……题的解答。
然后是学生乙的答卷记录。
4) 学生人数不超过200,试题数不超过999。
5) 程序的输出有4个报告:a) 按学号排列的成绩单,列出每个学生的成绩、名次。
b) 按学生成绩排序的成绩单。
c) 平均分数及标准偏差的报告。
d) 试题分析报告。
按试题号排序,列出各题学生答对的百分比。
解答:分别考虑输入条件和输出条件,以及边界条件。
给出下表所示的输入条件及相应的测试用例。
输出条件及相应的测试用例表。
通过上面表中列出的43个测试用例可以发现程序中大部分常见的错误。
如果采用随机和任意方法设计测试用例,不一定会发现这些错误。
如果使用得当,采用边界分析法的测试用例是很有效的。
在边界情况复杂的情况下,要找出适当的测试用例还需针对问题的输入域、输出域边界、耐心细致的逐个考虑。
补充(错误推测法):例2:三角形问题的边界值分析测试用例在三角形问题描述中,除了要求边长是整数外,没有给出其它的限制条件。
边界值分析法

• 练习:有函数f(x,y,z),其中 x∈[1900,2100],y∈[1,12],z∈[1,31] 的。请写出该函数采用边界值分析法设 计的测试用例。
练习答案
{ <2000,6,1>, <2000,6,0>, <2000,6,32>, <2000,6,31>, <2000,1,15>, <2000,0,15>, <2000,13,15>, <2000,12,15>, <1900,6,15>, <1899,6,15>, <2101,6,15>, <2100,6,15>, <2000,6,15> }
健壮性测试
• 健壮性测试是作为边界值分析的一个简单的扩充,它除了 对变量的5个边界值分析取值外,还需要增加一个略小于 最大值(max-)以及略大于最小值(min+)的取值,检查极限 值时系统的情况。因此,对于有n个变量的函数采用健壮 性测试需要6n+1个测试用例。 • 前面例1中的程序F的健壮性测试如下图所示:
说明
④学生人数不超过200,试题数不超过999。 ⑤程序的输出有4个报告: a)按学号排列的成绩单,列出每个学生的成绩、 名次。 b)按学生成绩排序的成绩单。 c)平均分数及标准偏差的报告。 d)试题分析报告。按试题号排序,列出各题学生 答对的百分比。 请使用边界值分析法来设计测试用例。
分析
分别考虑输入条件和输出条件,以 及边界条件。给出下表所示的输入条件 及相应的测试用例。
结论:对大小范围边界测试时,需要取比下 边界小1的值、下边界、中间值、上边界、 比上边界大1的值这5个值进行测试。
基于边界值分析法的测试用例

基于边界值分析法的测试用例编号输入数据测试的边界条件预期结果实际输出结果备注(预期结果与实际结果比较)1 9999999999 差为0 0 0 相符2 9999999998 差为正数1 1 相符3 1-99999999999 差为负数-99999999998 -99999999999 不相符4 2-99999999999 差为负数-99999999997 -99999999999 不符9999999999 差为负-1 -1 相符5 1+99999999998 和为正数99999999999 99999999999 相符6 99999999999/81 商为正1234567901. 1234567901. 相符7 99999999999/99999999998 商为正数1.000000000 1.000000000 相符8 99999999999 Sqrt 316227.7660 316227.7660 相符9 99999999999*25% 24999999999 24999999999 相符-9999999999*25% -2499999999 2499999999 相符1/99999999999 1.00000E-11 1.00000E-11 相符正数加法质数13+1313+5613+4913+0.313+3.24713+2sqrt13+1/3偶数56+4956+0.356+3.247 56+2sqrt 56+1/3非质数的奇数49+0.349+3.247 49+2sqrt 49+1/3有限小数0.3+3.247 0.3+2sqrt0.3+1/3 无限小数1/3+2sqrt1/3+1/3无限不循环2sqrt+2sqrt 减法质数13-1713-5613-4713-0.313-3.24713-2sqrt13-1/3偶数56-4956-0.356-3.247 56-2sqrt 56-1/3非质数的奇数49-0.349-3.247 49-2sqrt 49-1/3有限小数0.3-3.247 0.3-2sqrt 0.3-1/3 无限小数1/3-2sqrt1/3-1/3无限不循环2sqrt-3sqrt 除法质数13/1713/5613/4913/0.313/3.24713/2sqrt13/1/3偶数56/4956/0.356/3.24756/2sqrt56/1/3非质数的奇数49/0.349/3.24749/2sqrt49/1/3有限小数0.3/3.247 0.3/2sqrt 0.3/1/3无限小数(1/3)/2sqrt (1/3)+(1/7) 无限不循环(2sqrt)/(3sqrt)乘法质数13*1313*5613*4913*0.313*3.24713*(2sqrt)13*(1/3)偶数56*4956*0.356*3.24756*2sqrt56*1/3非质数的奇数49*0.349*3.24749*(2sqrt)49*(1/3)有限小数0.3*3.2470.3*2sqrt0.3*1/3无限小数(1/3)(2sqrt) (1/3)*(1/3)无限不循环(2sqrt)*(2sqrt) 倒数1/131/171/561/491/(0.3)1/(1.7)1/(1/3)1/(2sqrt)1/(3sqrt)百分号(%)质数13*(13%) 13*(56%)13*(49%)13*(0.3%)13*(3.247%)13*((2sqrt)%) 13*((1/3)%) 偶数56*(49%)56*(0.3%)56*(3.247%)56*((2sqrt)%)56*((1/3)%) 非质数的奇数49*(0.3%)49*(3.247%)49*((2sqrt)%)49*((1/3)%)有限小数0.3*(3.247%)0.3*((2sqrt)%) 0.3*((1/3)%)无限小数(1/3)*((2sqrt)%)(1/3)*((1/3)%)无限不循环(2sqrt)*((2sqrt)%)56*4956*0.356*3.247(1)此计算器最大的不足在于,屏幕上显示的是十一位数字。
测试用例的设计-边界值法例子

测试用例的设计-边界值法边界值分析也是一种黑盒测试方法,适度等价类分析方法的一种补充,由长期的测试工作经验得知,大量的错误是发生在输入或输出的边界上。
因此针对各种边界情况设计测试用例,可以查出更多的错误。
选择测试用例的原则:一、如果输入条件规定了值的范围,则应该取刚达到这个范围的边界值,以及刚刚超过这个范围边界的值作为测试输入数据;二、如果输入条件规定了值的个数,则用最大个数、最小个数、比最大个数多1格、比最小个数少1个的数做为测试数据;三、根据规格说明的每一个输出条件,使用规则一;四、根据规格说明的每一个输出条件,使用规则二;五、如果程序的规格说明给出的输入域或输出域是有序集合(如有序表、顺序文件等),则应选取集合的第一个和最后一个元素作为测试用例;六、如果程序用了一个内部结构,应该选取这个内部数据结构的边界值作为测试用例;七、分析规格说明,找出其他可能的边界条件。
边界值法举例找零钱最佳组合假设商店货品价格(R) 皆不大於100 元(且为整数),若顾客付款在100 元内(P) ,求找给顾客之最少货币个(张)数?(货币面值50 元(N50) ,10 元(N10) ,5 元(N5) ,1 元(N1) 四种)一、分析输入的情形。
R > 1000 < R < = 100R <= 0P > 100R<= P <= 100P < R二、分析输出情形。
N50 = 1N50 = 04 > N10 >= 1N10 = 0N5 = 1N5 = 04 > N1 >= 1N1 = 0三、分析规格中每一决策点之情形,以RR1, RR2, RR3 表示计算要找50, 10, 5 元货币数时之剩余金额。
R > 100R <= 0P > 100P < RRR1 >= 50RR2 >= 10RR3 >= 5四、由上述之输入/输出条件组合出可能的情形。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于边界值分析法的测试用例
编号输入数据测试的
边界条
件预期结果实际输出结果备注(预期结
果与实际结
果比较)
1 99999999999-99999999999 差为0 0 0 相符
2 99999999999-99999999998 差为正
数
1 1 相符
3 1-99999999999 差为负
数
-99999999998 -99999999999 不相符
4 2-99999999999 差为负
数
-99999999997 -99999999999 不符99999999998-99999999999 差为负-1 -1 相符5 1+99999999998 和为正
数
99999999999 99999999999 相符
6 99999999999/81 商为正1234567901. 1234567901. 相符
7 99999999999/99999999998 商为正
数
1.000000000 1.000000000 相符
8 99999999999 Sqrt 316227.7660 316227.7660 相符
9 99999999999*25% 24999999999 24999999999 相符
-9999999999*25% -2499999999 2499999999 相符
1/99999999999 1.00000E-11 1.00000E-11 相符正数加
法
质数13+13
13+56
13+49
13+0.3
13+3.247
13+2sqrt
13+1/3
偶数
56+49
56+0.3
56+3.247
56+2sqrt
56+1/3
非质数
的奇数
49+0.3
49+3.247
49+2sqrt
49+1/3
有限小
数
0.3+3.247
0.3+2sqrt
0.3+1/3 无限小
数
1/3+2sqrt
1/3+1/3
无限不
循环
2sqrt+2sqrt 减法
质数13-17
13-56
13-47
13-0.3
13-3.247
13-2sqrt
13-1/3
偶数
56-49
56-0.3
56-3.247
56-2sqrt
56-1/3
非质数
的奇数
49-0.3
49-3.247
49-2sqrt
49-1/3
有限小
数
0.3-3.247
0.3-2sqrt
0.3-1/3
无限小
数
1/3-2sqrt
1/3-1/3
无限不
循环
2sqrt-3sqrt 除法
质数13/17
13/56
13/49
13/0.3
13/3.247
13/2sqrt
13/1/3
偶数
56/49
56/0.3
56/3.247
56/2sqrt
56/1/3
非质数
的奇数
49/0.3
49/3.247
49/2sqrt
49/1/3
有限小
数
0.3/3.247
0.3/2sqrt
0.3/1/3
无限小
数
(1/3)/2sqrt
(1/3)+(1/7)
无限不
循环
(2sqrt)/(3sqrt)乘法
质数13*13
13*56
13*49
13*0.3
13*3.247
13*(2sqrt)
13*(1/3)
偶数
56*49
56*0.3
56*3.247
56*2sqrt
56*1/3
非质数
的奇数
49*0.3
49*3.247
49*(2sqrt)
49*(1/3)
有限小
数
0.3*3.247
0.3*2sqrt
0.3*1/3
无限小
数
(1/3)(2sqrt)
(1/3)*(1/3)
无限不
循环
(2sqrt)*(2sqrt)
倒数
1/13
1/17
1/56
1/49
1/(0.3)
1/(1.7)
1/(1/3)
1/(2sqrt)
1/(3sqrt)
百分号
(%)
质数13*(13%)
13*(56%)
13*(49%)
13*(0.3%)
13*(3.247%)
13*((2sqrt)%)
13*((1/3)%) 偶数
56*(49%)
56*(0.3%)
56*(3.247%)
56*((2sqrt)%)
56*((1/3)%) 非质数
的奇数
49*(0.3%)
49*(3.247%)
49*((2sqrt)%)
49*((1/3)%)
有限小
数
0.3*(3.247%)
0.3*((2sqrt)%)
0.3*((1/3)%)
无限小
数
(1/3)*((2sqrt)%)
(1/3)*((1/3)%)
无限不
循环
(2sqrt)*((2sqrt)%)
56*49
56*0.3
56*3.247
(1)此计算器最大的不足在于,屏幕上显示的是十一位数字。
但是输入十一位以上的数字计算器仍然能接受,例如:连续输入数字7二十次再摁减再摁4次输入三十次应该得到33333333333但是得到的却是-3.3333E+29
输入条件有效等价类无效等价类
加法运算
1+1=2(1)
-1+(-1)=-2(2)
99999999999+1=输入错误(结果是10000000000)
减法运算-1-1=-2(6)
10-9=1(7)
1-9=-10(8)
10^(-8)-10^8=输出错误(9)
乘法运算
2*2=4(10)
-1*(-2)=2(11)
2*10=19(12)
10^8*10^8=输出错误(13)
除法运算-1/1=-1(14)
10/5=2(15)
-1/10=1(16)
10/0=输出错误(17)。