黑盒测试方法课程练习题
- 格式:doc
- 大小:166.50 KB
- 文档页数:3
黑盒测试经典例题(精选8篇)【篇一】黑盒测试经典例题实验一黑盒测试(一)实验目的1.掌握用边界值方法设计测试用例和执行测试的过程;2.掌握用等价划分方法设计测试用例和执行测试的过程;3.掌握用决策表方法设计测试用例和执行测试的过程。
(二)实验内容测试“Ne某tDate”函数。
Ne某tDate返回输入日期后面的那个日期。
变量年、月、日都具有整数值,且满足如下条件:C1:1912≤年份≤2050C2:1≤月份≤12C3:1≤日期≤31(三)实验步骤用熟悉的语言(如C语言)编写实现该函数的功能,并用如下方法设计测试用例,进行黑盒测试。
参考源代码:#includeintne某tDate(intyear,intmonth,intday);voidmain(){/intyear,month,day;ne某tDate(2051,12,30);}intne某tDate(intyear,intmonth,intday) {/某如果还有明天,返回1;如果输入不合法,返回-1;某/witch(month){cae1:cae3:cae5:cae7:cae8:cae10:if(day==31){day=1;month=month+1;}eleday=day+1;break;cae4:cae6:cae9:cae11: if(day==30){day=1;month=month+1;}eleday=day+1;break;cae12:if(day==31){day=1;month=1;year=year+1;if(year==2022)printf("2022iover");}eleif(day=1912&&year12||month31||day【篇二】黑盒测试经典例题常用黑盒测试的方法黑盒测试(Black-bo某Teting,又称为功能测试或数据驱动测试)是把测试对象看作一个黑盒子。
利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。
一.黑盒测试练习答案:例题:某城市的电话号码由3部分组成。
这3部分的名称与内容分别是⏹地区码:空白或3位数字;⏹前缀:非‘0’或‘1’开头的3位数字;⏹后缀:4位数字。
⏹假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的Array号码,用等价类划分法设计他的测试用例二:面向对象分析设计答案一. 阅读下列说明和图,回答问题1至问题4,将答案填到答题纸的对应栏内。
参考答案:【问题1】(3分)【问题2】(4分)!!C、D【问题3】(4分)【问题4】(4分)用例之间的扩展关系用于对可选系统行为的用例的一部分建模。
通过这种方式,可以把可选行为从必需的行为中分离出来。
二. 阅读下列说明和图,完成问题1至问题4,并在答题纸上自行列表写出答案。
【问题1】(4分)根据【说明】中的描述,使用表1中的英文名称,给出图1中A1~A4所对应的参与者。
【问题2】(3分)!!注意:U2和U3的答案可以互换。
!!根据【说明】中的描述,使用表2中的英文名称,给出图1中U1~U3所对应的用例。
【问题3】(4分)根据【说明】中的描述,给出图1中(1)和(2)所对应的关系及其含义。
(1)<<extend>>(1分):将常规动作放在一个基本Use Case中,将非常规动作放在其扩展Use Case中。
(1分)(2)<<include>>(1分):两个Use Case,如果其中一个在其事件流中包含了另一个,那么它们间就有包含关系。
(1分)【问题4】(4分)根据【说明】中的描述,使用表2和表3中的英文名称,给出图2中Action1~Action4对应的活动。
三.四. 阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。
【问题1】(7分)根据说明中的描述,给出图3-1中A1和A2所对应的参与者,U1至U3所对应的用例,以及该图中空(1)所对应的关系。
(U1至U3的可选用例包括:Session、Transaction、Insert Card、Invalid PIN Process和Transfer)A1: Customer A2: Bank U1: SessionU2: Invalid PIN Process U3: Transaction (1): 《extend》【问题2】(6分)根据说明中的描述,使用表3-1中的英文名称,给出图3-2中6~9对应的消息。
一、等价类例题:某企业招工,要求报名者的出生日期在1970年1月~1990年12月之间,企业的人事管理系统需要输入报名者的出生日期,规定日期由6位数字字符组成,前4位表示年,后2位表示月。
出生年月不在规定范围内的,系统将拒绝接受,并显示“年龄不合格”的出错信息。
试用等价类划分法设计测试用例,来测试系统的“年龄检查功能”。
解答:第一步:划分等价类、列出等价类表可以划分为3个有效等价类,7个无效等价类,如下表所示。
第二步:确立测试用例首先为每一个等价类规定一个唯一的编号。
设计测试用例,尽可能多的覆盖有效等价类。
在表中列出了3个有效等价类,编号为①、二、边界值1、用边界值分析法,假定1<X<100,那么X在测试中应该取的边界值是___BA.X=1,X=100 B.X=0,X=1,X=100,X=101 C.X=2,X=99 D.X=O,X=1012、假定X为整数类型变量,X>=1并且X<=10,如果用边界值分析法,X在测试中应该取__B_值。
A.1,10 B.0,1,10,11 C.1,11 D.1,5,10,11三、决策表:例题:某学生成绩管理系统,要求“对平均成绩在90分以上,且没有不及格科目的学生,或班级成绩排名在前5位的学生,在程序中将学生的姓名用红色标识”, 请建立该场景的判定表。
1、确定规则的个数。
若条件数为n,规则个数应为2的n次方。
这里有3个条件,每个条件有两个取值,故应有23=8种规则。
2、列出所有的条件项和动作项3、填入条件项、动作项,得到初始判定表。
4、合并相似规则,得到优化后判定表。
若表中有两条以上规则具有相同的动作,并且在条件项之间存在极为相似的关系,便可以合并。
黑盒测试用例设计方法案例与练习题1、等价类案例登录功能用户名和密码登录(以在线考试系统为例)年龄字段输入2、网站注册页面年龄输入要求:某网站前台用户注册页面,其中有年龄字段的输入,要求练习题三角形输入三角形三边应为正整数,分别构成非三角形、一般三角形、等腰三角形和等边三角形。
1、需求分析:1、正整数2、两边之和大于第三边3、两边相等4、三边相等232、边界值案例登录功能实例同等价类年龄字段输入实例同等价类,边界值设计如下练习题保险费率计算某保险网站的前台计算保费页面,其中有年龄字段的输入,不同的年龄段会使用不同的费率计算标准。
其中:01-15岁,费率为:10%16-20岁,费率为:15%21-50岁,费率为:20%等价类与边界值综合练习题1、在某一版的编程语言中对变量名称规格作如下规定:变量名称是由字母开头的,后跟字母或者数字的任意组合构成。
编译器能够区分的有效字符数为8个,并且变量名称必须先声明,后使用,在同一声明语句中,变量名称至少必须有一个。
输入条件:1、变量名称是由字母开头6、变量名称不能重复2、字母或者数字的组合7、字母大小写敏感3、有效字符数为8个8、不能使用关键字4、变量名称必须先声明5、声明语句中变量名称至少必须有一个3、有效字符数为8个[1-8] [1-8]1 A17 0 0 B118 A18>8 9 B126 A194、变量名称必须先声明先声明A20不声明使用B13先使用后声明B145、声明变量至少为一个声明变量为一个A21无变量声明B15 声明变量为多个A226、变量名称不能重复变量名称不重复A23 变量名称重复B167、字母大小写敏感字母大小写敏感AbD A248、不能使用关键字不使用关键字abc A25 使用关键字int B17 2、126邮箱注册输入条件有效等价类编号无效等价类编号字符长度[6-18] 10 9 1<len<6 10 >18 11 空格123、判定表案例读书选择1、如果觉得疲倦并且对书的内容感兴趣,同时书中的内容让你糊涂的话,回到本章重读2、如果觉得疲倦并且对书的内容感兴趣,同时书中的内容不让你糊涂,继续读下去3、不觉得疲倦并且对书的内容感兴趣,但是书中的内容让你糊涂的话,回到本章重读4、如果觉得疲倦并且对书中的内容不感兴趣,同时书中的内容不让你糊涂,停止阅读,请休息5、如果觉得疲倦并且对书的内容不感兴趣,并且书中的内容让你糊涂,请停止阅读,休息6、不疲倦,对书的内容感兴趣,书中的内容不糊涂,继续读下去7、不疲倦,不感兴趣,书中内容糊涂,跳到下一章去读8、不疲倦,不感兴趣,书中内容不糊涂,跳到下一章去读1、需求分析条件:是否疲倦、是否感兴趣、是否糊涂结果:本章重读、继续读、停止阅读、跳到下一章1、3优点:组合充分,没有遗漏缺点:用例数量随条件的递增而过多(2n n:条件的个数)条件的类型:布尔3、合并判定表条件有一个不同风险:产生分支或者路径的遗漏练习题密码修改若需修改密码,系统验证旧密码正确,两个新密码相同,则更新密码,旧密码即失效,其他修改项也生效,并提示“用户信息修改成功”;若旧密码不正确,则提示“用户密码错”,系统将不修改个人信息;若两个新密码不同,则提示“新密码与验证新密码不同”,系统将不修改个人信息。
一、简答题1、功能测试的定义,并指出几种主要的测试用例设计方法。
答:功能测试也叫黑盒测试或数据驱动测试,是根据产品特征、操作描述和用户方案,测试一个产品的特性和可操作行为以确定它们满足设计需求。
测试用例设计的主要方法有:等价类划分方法、边界值分析方法、错误推测法、因果图法、判定表方法、功能图法、正交试验法。
2、什么叫集成测试?集成测试策略中增值式测试和非增值式测试是什么?答:集成测试又称组装测试、联合测试、子系统测试或部件测试。
集成测试是在单元测试的基础上,将所有的模块按照设计要求组装成子系统或系统进行的测试活动。
增值式测试就是把下一个要测试的模块同已经测试好的模块结合起来进行测试,测试完以后再把下一个应该测试的模块结合进来测试,直至将所有的单元模块组装成为符合要求的软件系统。
非增值式测试是先分别测试每个模块,再把所有模块按设计要求放在一起组合成所要的程序。
3、简述软件测试的主要过程答:软件测试过程按4个步骤进行,即单元测试、组装测试、确认测试和系统测试。
单元测试集中对用源代码实现的每一个程序单元进行测试,检查各个程序模块是否正确地实现了规定的功能。
然后,进行集成测试,根据设计规定的软件体系结构,把已经测试过的模块组装起来,在组装过程中,检查程序结构组装的正确性。
确认测试则是要检查已经实现的软件是否满足了需求规格说明书中的各种需求,以及软件配置是否完全、正确。
最后是系统测试,把已经经过确认的软件纳入实际运行环境中,与其他系统成份组合在一起进行测试。
严格地说,系统测试已经超出了软件工程的范围。
二、设计题1、下面是选择排序的程序,其中datalist是数据表,它有两个数据成员:一是元素类型为Element的数组V,另一个是数组大小n。
算法中用到两个操作,一是取某数组元素V[i]的关键码操作getKey ( ),一是交换两数组元素内容的操作Swap( )::void SelectSort ( datalist & list ) {//对表list.V[0]到list.V[n-1]进行排序, n是表当前长度。
⿊盒测试习题习题020501 ⽤等价类划分法设计8位长数字类型⽤户名登录操作的测试⽤例,应该分成( )个等价区间。
即出⽣年⽉不得早于1960年7⽉,不晚于1979年6⽉。
报名程序具有⾃动检验输⼊数据的功能,如果出⽣年⽉不属于1. 4~16个字符2. ⽀持英⽂⼩写、数字、下划线3. 不⽀持全部为数字或下划线0506⽤等价类划分法设计下⾯的测试⽤例:有⼀个报表系统,要求⽤户输⼊要处理的报表的⽇期,假设⽇期的范围为2000年1⽉到2020年12⽉。
如果⽤户输⼊的⽇期不在这个范围内,则显⽰错误码信息,并且此系统规定⽇期由年⽉六位数字组成,前4为代表年,后两位代表⽉。
出,并指出各个测试⽤例所能符合的等价类编号0507 NextDate 函数包含三个变量:month 、 day 和 year ,函数的输出为输⼊⽇期后⼀天的⽇期。
例如,输⼊为2006年3⽉ 7⽇,则函数的输出为2006年3⽉8⽇。
要求输⼊变量 month 、 day 和 year 均为整数值,并且满⾜下列条件:①1≤month≤12 ②1≤day≤31,若顾客付款在100元内(P),求找给顾客之最少货币个(张)数?(货币⾯值50元(N50),10元(N10),5元(N5),1元(N1)四种)地区码:空⽩或3位数字;前缀:⾮‘0’、‘1’开头的3位数字;后缀:4位数字。
假定被测程序能接受⼀切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。
0510万年历查询软件,要求⽤户输⼊以年⽉⽇表⽰的⽇期,然后系统会换算出该⽇期的农历表⽰法及相关黄历信息。
假设⽇期限定在1900年1⽉1⽇~2049年12⽉31⽇,并规定⽇期由8位数字字符组成,前4位表⽰年,中间2位表⽰⽉,最后2位表⽰⽇期。
其中4、6、9、11⽉只有30天,平年的2⽉份只有28天,闰年的2⽉份有29天。
(备注:为简化处理,本题在进⾏⽤例设计时,不必考虑对平年、闰年的判断)0511051205130514 下⾯为C语⾔程序,边界值问题可以定位在( )int data[3];int i;for(i=1;i<=3;i++)data[i]=100;A. data[0]B. data[1]C. data[2]D. data[3]0515 测试计算正数平⽅根的函数。
//模板说明//凡是用//开头的行都是注释行,不会作为试题内容导入到题库中//每个试题间用空行隔开//试题的开头行是题干,前面不能有注释行并列在上面,否则这个试题都无效;如要注释则在注释后再加一空行隔开/题干、内容、答案、分数、难度、试题分类和题型是一个试题必须项,其它的都是可选的,可选的属性可以不写//试题开头可以有序号,格式为"序号.", 后接题干内容;也可以不写序号,系统会自动加上序号以便区分试题//作为格式用的符号如":","."是不分半角全角的,半角全角都有效//可选项直接在题干后以字母和点开头,如A.、B.并且要求大写。
//编号可以不要。
没有编号是新增,有编号则是修改现有试题,例子中给出的都没有给出编号//可用的题型有:单选题、多选题、判断题、填空题、问答题、组合题、解答题//解答题需要给出操作题类型,如操作题类型:Word//填空题的空位处用三个或三个以上的"_",即"___"来表示,用"|"来分隔多个空的答案,如果一个空有多个标准答案请用"&"隔开//答题时间格式为00:00:00,即 "小时:分钟:秒"//可用的状态有:正常、禁用,如果没有,则默认为正常//可用的操作题类型有:Word、Excel、PowerPoint、Visio,默认为Word//如果试题内容里有换行,则必需要在这段内容前后分别用”{回车换行....回车换行}”括起来。
//如果试题内容中包含有'{'或'}',请用'\'把它们转义为: '\{'或'\}'。
//如果试题内容中包括有'<'或'>',表示为尖号时请分别用'< '、'> '替换;表示为大于或小于时,请用全角格式下的'<'或'>'来表示;表示为标签时,请'<'与'>'对称使用。
黑盒测试
一、实验目的
通过简单程序黑盒测试,熟悉测试过程,对软件测试行程初步了解,并养成良好的测试习惯。
二、实验内容
背景:
被测测试程序功能:计算被输入日期是星期几;
程序定义:已知公元1年1月1日是星期一,只要输入年月日,能自动回复当天是星期几;
测试环境:Windows XP、VC++;
说明:因程序简单,因此未使用测试软件,均为手工输入,得到输出进行测试。
为简单起见,不考虑公元前的日期。
程序说明:
A程序思路:计算输入日期与公元1年1月1日所相差的天数,具体如下:总天数=公元1年到输入日期上一年年底天数+输入年份的1月到上月月底天数+输入日期的天数
B闰年满足条件(year%4==0)&&(year%100!=0)||(year%400==0)
(1)分析各种输入情况,结合程序输出结果,进行等价类划分,并给出详细测试用例;
(2)根据(1)所划分的等价类,进行边界值分析,并给出具体的测试用例;
三、实验要求
(1)根据题目要求编写测试用例
(2)实现测试用例的黑盒测试
(3)撰写实验测试报告
(4)试验心得总结
四、实验测试过程
1、对测试用例进行等价类划分。
2、选择测试用例,使之覆盖所有等价类情况。
3、对测试用例进行边界值分析。
五、实验结果及结论结果分析:
六、实验心得体会
七、附录
部分用例测试截图:。
第1章一、判断分析题1.软件测试的目的是尽可能多的找出软件的缺陷。
()2.软件测试的目的是证明软件没有错误。
()3.测试组负责软件质量。
( )4.程序的效率与程序的复杂性相关。
( )5.软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。
( )6.测试程序仅仅按预期方式运行就行了。
( )7.好的测试员不懈追求完美。
( )8.不存在质量很高但可靠性很差的产品。
( )9.测试组负责软件质量。
( )10.测试是为了验证该软件已正确地实现了用户的要求。
( )11.发现错误多的程序模块,残留在模块中的错误也多。
( )12.程序效率的提高主要应通过选择高效的算法来实现。
( )13.测试人员要坚持原则,缺陷未修复完坚决不予通过。
()14.项目立项前测试人员不需要提交任何工件。
()15.缺陷跟踪系统只针对对测试人员来使用。
( )16.从用户软件开发者的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可接受该产品。
( )17.软件项目在进入需求分析阶段,测试人员应该开始介入其中。
( )18.测试是提高产品质量根本手段。
()19.项目立项前测试人员不需要提交任何工件。
()20.测试人员要坚持原则,缺陷未修复完坚决不予通过。
()21.代码评审员一般由测试员担任。
()22.代码评审是检查源代码是否达到模块设计的要求。
()二、简答题1.什么是软件测试?软件测试的目的和作用是什么?2.简述软件测试的目的和原则。
3.软件缺陷产生的原因?4.在软件工程或软件测试中,哪些软件问题被称为软件缺陷?5.软件的缺陷等级应如何划分?6.针对缺陷采取怎样的管理措施?7.在测试实施之前,如何才能确定好的测试策略和测试方法?8.什么是软件测试,以及软件测试的意义?9.什么是软件测试?什么是测试用例,测试用例必须包括那几部分?10.简述静态测试和动态测试的区别?11.分析软件测试的复杂性。
12.简述你对测试工作的认识过程、在以后的工作的一些建议。
//模板说明//凡是用//开头的行都是注释行,不会作为试题内容导入到题库中//每个试题间用空行隔开//试题的开头行是题干,前面不能有注释行并列在上面,否则这个试题都无效;如要注释则在注释后再加一空行隔开/题干、内容、答案、分数、难度、试题分类和题型是一个试题必须项,其它的都是可选的,可选的属性可以不写//试题开头可以有序号,格式为"序号.", 后接题干内容;也可以不写序号,系统会自动加上序号以便区分试题//作为格式用的符号如":","."是不分半角全角的,半角全角都有效//可选项直接在题干后以字母和点开头,如A.、B.并且要求大写。
//编号可以不要。
没有编号是新增,有编号则是修改现有试题,例子中给出的都没有给出编号//可用的题型有:单选题、多选题、判断题、填空题、问答题、组合题、解答题//解答题需要给出操作题类型,如操作题类型:Word//填空题的空位处用三个或三个以上的"_",即"___"来表示,用"|"来分隔多个空的答案,如果一个空有多个标准答案请用"&"隔开//答题时间格式为00:00:00,即 "小时:分钟:秒"//可用的状态有:正常、禁用,如果没有,则默认为正常//可用的操作题类型有:Word、Excel、PowerPoint、Visio,默认为Word//如果试题内容里有换行,则必需要在这段内容前后分别用”{回车换行....回车换行}”括起来。
//如果试题内容中包含有'{'或'}',请用'\'把它们转义为: '\{'或'\}'。
//如果试题内容中包括有'<'或'>',表示为尖号时请分别用'< '、'> '替换;表示为大于或小于时,请用全角格式下的'<'或'>'来表示;表示为标签时,请'<'与'>'对称使用。
第十四章黑盒测试1、在进行单元测试时,常用的方法是()(A)采用黑盒测试,辅之以白盒测试;(B)采用白盒测试,辅之以黑盒测试;(C)只使用黑盒测试;(D)只使用白盒测试。
答案:B2、黑盒测试、白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点。
答题要点:黑盒测试的优点有:●比较简单,不需要了解程序内部的代码及实现;●与软件的内部实现无关;●从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;●基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;●在做软件自动化测试时较为方便。
黑盒测试的缺点有:●不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;●自动化测试的复用性较低。
白盒测试的优点有:●帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐藏的问题。
白盒测试的缺点有:●程序运行会有很多不同的路径,不可能测试所有的运行路径;●测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功能需求;●系统庞大时,测试开销会非常大。
3、根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。
“一个程序读入三个整数。
把此三个数值看成是一个三角形的三个边。
这个程序要打印出信息,说明这个三角形是三边不等的、是等腰的、还是等边的。
”答题要点:可根据三角形的类别,设计三边的长度,设计等价类测试用例。
4、设要对一个自动饮料售货机软件进行黑盒测试。
该软件的规格说明如下:“有一个处理单价为1元5角钱的盒装饮料的自动售货机软件。
若投入1元5角硬币,按下“可乐”、“雪碧”或“红茶”按钮,相应的饮料就送出来。
若投入的是2元硬币,在送出饮料的同时退还5角硬币。
”(1) 试利用因果图法,建立该软件的因果图;(2) 设计测试该软件的全部测试用例。
答题要点:参照因果图法的步骤进行分析,最后将判定表中的每一列拿出来设计测试用例。
✓分析软件规格说明描述中的因果关系(输入与输出的因果关系)✓找出原因与结果、原因与原因之间的对应关系,画出因果图✓在因果图上标记约束或限制条件✓把因果图转化为判定表。
软件工程黑盒测试考试题目一、选择题(共10题,每题2分,共20分)1. 黑盒测试的主要目的是:A. 检查代码的正确性B. 测试系统的可用性C. 检查系统的内部结构D. 分析系统的性能2. 哪种黑盒测试方法能够覆盖所有的路径?A. 等价类划分B. 边界值分析C. 决策表测试D. 想象法3. 在进行黑盒测试时,下面哪项是正确的?A. 只需关注输入与输出B. 只需关注程序内部C. 只需关注系统的可靠性D. 只需关注用户的操作4. 下列哪个是黑盒测试的特点?A. 可以完全覆盖程序的全部代码B. 不需要关注程序的内部结构C. 可以检查代码的正确性D. 可以找到所有的编程错误5. 在黑盒测试中,下列哪个是一个优秀的测试用例设计准则?A. 等价类划分B. 随机选择输入数据C. 依赖于经验和直觉D. 只测试边界值6. 功能测试是黑盒测试的一种类型,其主要目的是:A. 检查程序是否按照设计要求运行B. 确保程序没有错误C. 检查程序的可用性D. 检查程序的性能7. 在进行黑盒测试时,常用的测试方法是:A. 语句覆盖B. 判定覆盖C. 边界值分析D. 等价类划分8. 在黑盒测试中,下列哪个是正确的?A. 测试范围不能限制在输入和输出上B. 测试用例的设计不需要考虑边界值C. 等价类划分只适用于数字类型的输入D. 增强的判定覆盖方法可以提高测试的效率9. 在进行黑盒测试时,如何选择适当的测试用例?A. 只需从测试用例库中随机选择几个即可B. 只需从测试用例库中选择执行时间最短的C. 需要考虑系统需求和功能进行选择D. 只需选择一种测试技术进行测试即可10. 黑盒测试中的决策表测试主要用于:A. 检查系统的安全性B. 检查系统的性能C. 检查算法的正确性D. 检查程序的正确性二、简答题(共5题,每题10分,共50分)1. 请简要解释黑盒测试和白盒测试的区别并举例说明。
2. 请解释等价类划分的概念,并说明为什么等价类划分是一种有效的测试方法。