实验二--黑盒测试(二)

合集下载

黑盒测试经典例题(精选8篇)

黑盒测试经典例题(精选8篇)

黑盒测试经典例题(精选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,又称为功能测试或数据驱动测试)是把测试对象看作一个黑盒子。

利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。

软件测试实验指导

软件测试实验指导

实验二:黑盒测试时间:2011-3-6【实验目的】1)掌握边界值分析,等价类技术。

2)掌握开发一个决策表和相应的测试用例的方法。

【实验要求】(1)认真阅读和掌握和本实验相关的教材内容。

(2)分析问题的要求,开发相关程序。

(3)用等价分类法测试党员出生年月的输入设计是否符合要求和相应的测试用例。

(4)开发一个决策表和相应的测试用例。

【实验内容】1、试用等价分类法测试同学出生年月的输入设计是否符合要求,假设出生年月格式为yyyymmdd。

解:输入数据无效等价类有效等价类出生年月日①8位数字字符②有非数字字符③少于8个数字符④多于8个数字符对应数值⑤在19090101-19900101之间⑥<19090101⑦>19900101月份对应数值⑧在1-12之间⑨等于"00 "⑩>12日期对应值○111,3,5,7,8,10,12月在1-31之间○124,6,9,11月在1-30之间○13闰年2月在1-29之间○14非闰年2月在1-28之间○15等于"00 "○16>31○172,4,6,9,11月等于"31 " ○182月等于"30 "○19非闰年2月等于"29"请写出你用的开发语言,你开发的程序,测试过程和结果。

2.试为三角形问题中的直角三角形开发一个决策表和相应的测试用例。

注意,会有等腰直角三角形。

解:判断构成的是否为直角三角形的问题的决策表设计如下:c1:a<b+c? F T T T T T T T T T Tc2:b<a+c? - F T T T T T T T T Tc3:c<a+b? - - F T T T T T T T Tc4:a2+b2=c2? - - - T T T T F F F Fc5: a2+c2=b2? - - - T T F F T T F Fc6: b2+c2=a2? - - - T F T F T F T Fa1:非三角形X X Xa2:直角三角形X X Xa3:非直角三角形X a4:不可能X X X X根据该决策表设计测试用例如下:用例ID a b c 预期输出DT1 4 1 2 非三角形DT2 1 4 2 非三角形DT3 1 2 4 非三角形DT4 ? ? ? 不可能DT5 ? ? ? 不可能DT6 ? ? ? 不可能DT7 3 4 5 直角三角形DT8 ? ? ? 不可能DT9 3 5 4 直角三角形DT10 5 3 4 直角三角形DT11 2 3 4 非直角三角形开发语言:C语言程序源代码:#include<stdio.h>int panduan(int a,int b,int c){if(a<(b+c) && b<(a+c) && c<(a+b)){if(a*a+b*b==c*c && a*a+c*c==b*b && b*b+c*c==a*a)return 3;else if(a*a+b*b==c*c || a*a+c*c==b*b || b*b+c*c==a*a)return 1;else return 0;}elsereturn 2;}main(){int b1,b2,b3;int zhijiao;int i;scanf("%d%d%d",&b1,&b2,&b3);zhijiao=panduan(b1,b2,b3);if(zhijiao==1)printf("直角三角形\n");if(zhijiao==2)printf("非三角形\n");if(zhijiao==0)printf("非直角三角形\n");if(zhijiao==3)printf("不可能\n");测试过程和结果;通过测试}。

黑盒测试实验二

黑盒测试实验二
ຫໍສະໝຸດ 黑盒测试实验步骤:
1、开发打印等级功能类 2、开发输入X 和 打印输出测试驱动 3、试根据此规格说明用等价类方法、边界值方法、错误推测 法共同完成针对该程序功能的黑盒测试用例的设计。 4、进行测试验证
黑盒测试实验
要求:
1、交电子实验报告 2、交简单的实验纸质报告
黑盒测试实验二黑盒测试实验报告黑盒测试实验总结黑盒测试黑盒测试方法白盒测试黑盒测试黑盒测试工具黑盒测试和白盒测试黑盒测试用例设计方法黑盒测试方法有哪些
黑盒测试实验
黑盒测试实验
实验目的: 1 通过实验进一步黑盒测试方法 2 通过实验熟悉使用等价类方法、边界值法和 错误推测法设计测试用例 3 练习测试驱动的开发
黑盒测试实验
实验内容: 需求描述:
“成绩满分为100分,学生成绩记为x。若90≤x≤100, 打印等级为“优”;若80≤x<90,打印等级为“良”; 若 70≤x<80,打印等级为“中”; 若60≤x<70,打印等级为 “及格”; 若0≤x<60,打印等级为“不及格”;若x<0或 x>100或x中含有非数字字符,打印为“无效成绩”。” 试根据此规格说明用等价类方法、边界值方法、错误推测法共 同完成针对该程序功能的黑盒测试用例的设计。

实验二 黑盒测试

实验二 黑盒测试

实验二:黑盒测试
一、实验目的
(1)熟练掌握黑盒测试方法中的边值分析方法和判定表驱动测试方法
(2)通过实验掌握如何应用黑盒测试方法设计测试用例
(3)运用所学理论,完成实验研究的基本训练过程
二、实验内容
1.用你熟悉的语言编写一个判断三角形问题的程序。

要求:读入代表三角形边长的三个整数A,B,C,取值范围为1-100,判断它们能否组成三角形。

如果能够,则输出三角形是等边、等腰、一般三角形和非三角形。

2.使用边值分析和判定表驱动测试方法设计测试用例。

三、实验步骤
(1)用你熟悉的语言编写上述源程序
(2)使用边值分析方法设计测试用例,并填写完成表1和表3
(3)使用判定表驱动测试方法建立判定表,完成测试用例的设计。

程序:
四、实验数据记录
1、边界值方法测试用例设计
2、判定表驱动测试设计测试用例
(1)确定规则个数。

(2)列出所有的条件桩和动作桩。

(3)填入输入项。

(4)填入动作项,得到初始判定表
(5)化简,合并相似规则后得到三角形问题的判定表。

化简后的判定表:
五、实验结果分析
六、心得体会。

黑盒测试实验二

黑盒测试实验二

黑盒测试实验二1.NextDate函数的边界值分析测试用例程序有三个输入变量month、day、year(month、day和year均为整数值,并且满足:1≤month≤12、1≤day≤31、1900≤ year ≤2050。

),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上第二天的日期。

例如,输入为2005年11月30日,则该程序的输出为2005年12月1日。

请用等价类测试和边界测试法设计测试用例。

等价类测试法:有效等价类month、day、year、均为整数值,且1≤month≤12、1≤day≤31、1900≤ year ≤2050。

测试用例为:5 month,10 day,2010 year 预期输出为:5 month,11 day,2010 year 无效等价类1、month、day、year、不为整数值,1≤month≤12、1≤day≤31、1900≤ year ≤2050测试用例为:5.4 month,10 day,2010 year 预期输出为:无效输入2、month、day、year、均为整数值,不满足1≤month≤12、1≤day≤31、1900≤ year ≤2050三个条件中其中一个。

测试用例为:13 month,10 day,2010 year 预期输出为:无效输入边界测试法:测试用例为:1 month,1 day,1900 year 12 month,31 day,2050 year预期输出为:1 month,2 day,1900 year 预期输出为:无效输入0 month,1 day,1900 year 13 month,10 day,1900 year预期输出为:无效输入预期输出为:无效输入5 month,0 day,1902 year 5 month,32 day,1903 year预期输出为:无效输入预期输出为:无效输入7 month,5 day,1899 year 7 month,5 day,2051 year预期输出为:无效输入预期输出为:无效输入实验代码:#include<stdio.h>void con(){int a,b,c;printf("年份:");scanf("%d",&a);printf("月份:");scanf("%d",&b);printf("日:");scanf("%d",&c);if(a>=1900 && a<=2050){if(b>0 && b<=12){if(b==2){if(a%4==0){if(c>0 && c<=29){if(c==29){printf("输入的日期是:%d年%d月%d日\n",a,b,c);c=1;b=b+1;printf("第二天的日期是:%d年%d月%d日\n",a,b,c);}else{printf("输入的日期是:%d年%d月%d日\n",a,b,c);printf("第二天的日期是:%d年%d月%d日\n",a,b,c);}}else{printf("输入的天数不在--29之间!\n");}}if(a%4!=0){if(c>0 && c<=28){if(c==28){printf("输入的日期是:%d年%d月%d日\n",a,b,c);c=1;b=b+1;printf("第二天的日期是:%d年%d月%d日\n",a,b,c);}else{printf("输入的日期是:%d年%d月%d日\n",a,b,c);printf("第二天的日期是:%d年%d月%d日\n",a,b,c);}}else{printf("输入的天数不在--28之间!\n");}}}else{if( b==4 || b==6|| b==9 || b==11){if(c>0 && c<=30){printf("输入的日期是:%d年%d月%d日\n",a,b,c);c=c+1;if(c>30){c=1;b=b+1;printf("第二天的日期是:%d年%d月%d日\n",a,b,c);}else{printf("第二天的日期是:%d年%d月%d日\n",a,b,c);}}else{printf("输入的天数不在--30之间!\n");}}else{if(c>0 && c<=31){printf("输入的日期是:%d年%d月%d日\n",a,b,c);c=c+1;if(c>31){c=1;b=b+1;if(b>12){b=1;a=a+1;if(a>2050){printf("第二天的日期不在到范围之内!\n");}else{printf("第二天的日期是:%d年%d月%d日\n",a,b,c);}}else{printf("第二天的日期是:%d年%d月%d日\n",a,b,c);}}else{printf("第二天的日期是:%d年%d月%d日\n",a,b,c);}}else{printf("输入的天数不在--31之间!\n");}}}}else{printf("输入的月份不在--12之间!\n");}}else{printf("输入的年份不在到范围之内!\n");}}void main(){con();printf("是否继续(Y|N)?");char x;scanf("%s",&x);if(x=='Y' || x=='y')printf("\n");main();}。

黑盒测试实验报告

黑盒测试实验报告

实验一:黑盒软件测试一、实验目的通过简单程序黑盒测试,熟悉测试过程,对软件测试行程初步了解,并养成良好的测试习惯。

二、实验内容背景:被测测试程序功能:计算被输入日期是星期几;程序定义:已知公元1年1月1日是星期一,只要输入年月日,能自动回复当天是星期几;测试环境:Windows 2000、Dev C++;说明:因程序简单,因此未使用测试软件,均为手工输入,得到输出进行测试。

为简单起见,不考虑公元前的日期。

程序说明:A程序思路:计算输入日期与公元1年1月1日所相差的天数,具体如下:总天数=公元1年到输入日期上一年年底天数+输入年份的1月到上月月底天数+输入日期的天数B闰年满足条件(year%4==0)&&(year%100!=0)||(year%400==0)(1)分析各种输入情况,结合程序输出结果,进行等价类划分,并给出详细测试用例;(2)根据(1)所划分的等价类,进行边界值分析,并给出具体的测试用例;(3)决策表测试法;①列出输入变量month、 day、 year的有效等价类;(条件桩)②分析程序的规格说明,给出问题规定的可能采取操作;(动作桩)③画出决策表(简化);④根据决策表,给出详细测试用例。

三、实验要求(1)根据题目要求编写测试用例(2)实现测试用例的黑盒测试(3)撰写实验测试报告(4)试验心得总结四、实验测试过程1、对测试用例进行等价类划分。

等价类划分表:2、选择测试用例,使之覆盖所有等价类情况。

测试用例表:3、对测试用例进行边界值分析。

边界值分析表(1<=year<=2050):五、实验结果及结论结果分析:原因:C1:year为闰年C2:month为1、3、5、7、8、10、12 C3:month为4、6、9、11C4:month为2C5:1<=day<=27C6:day=28C7:day=29C8:day=30C9:day=31结果:E1:输出今天是星期几E2:提示:输入不满足要求决策表:结论:程序无逻辑性等大的错误,但需要进一步完善,如对输入进行限定等。

2.黑盒测试:边界值及测试用例设计

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)。

黑盒测试实验二

黑盒测试实验二

软件测试基础与实践实验报告实验名称:黑盒测试实验二实验地点:机房实验日期:学生姓名:学生学号:一、实验目的(1)能根据待测软件的特点,选择合适的方法对软件进行黑盒测试(功能测试);(2)学习测试用例的书写。

实验1:随机测试VS 黑盒测试VS 白盒测试在游戏引擎开发中,检测物体碰撞是一项重要的基础功能。

为简单起见,我们这里只考虑二维平面空间的情况,并用RectManager 程序判断平面上任意两矩形的相交关系(A:不相交,B:相交:B1:相交为一个区域,B12:包含,B13:完全重合,B2:交点为1 个点,B3:交点为1 条线段),如果相交,则同时给出相交部分的面积。

我们假设二维平面为iphone4 屏幕(640*960 分辨率),且所有矩形的边都与坐标轴平行。

计算机图形学中,通常用左上角和右下角的坐标来表示一个矩形。

(1)请编写一简单程序,随机生成两个矩形的数据,请用这些随机数据对RectManager 进行测试。

提示:a) 使用随机函数生成大量测试用例(如10 万个随机测试用例);b) 注意随机测试用例产生的范围应比屏幕范围稍微大一点。

屏幕范围:x 取值范围[0-639],y 取值范围[0-959];c) 在测试用例生成程序中,同时调用RectManager 中的方法直接驱动测试自动执行;d) 对大量的随机测试进行统计,分析这些随机测试用例对两矩形相交的各种关系的覆盖情况(统计上的命中率);(2)请用黑盒测试方法,设计相应的测试用例来测试程序;提示:程序运行命令行:java -jar RectManager.jar(3)请分析RectManager 的实现源代码,利用基本路径测试方法,设计相应的测试用例来测试程序;只要求针对solve()方法进行测试。

(4)在上述实验的基础上分析三种测试方法发现缺陷的能力上有何差别。

(1)通过编写程序测试,代码如下:public class test{float area;//Recode areaint nFlag; //recode the relation of two rectanglepublic static void main(String[] args){int leftA,leftB,rightA,rightB,topA,topB,bottomA,bottomB;int[]result = {0,0,0,0,0,0,0,0};Random random = new Random();for(int i = 0;i < 100000;i++){leftA = Math.abs(random.nextInt())%640;leftB = Math.abs(random.nextInt())%640;rightA = Math.abs(random.nextInt())%640+leftA;rightB = Math.abs(random.nextInt())%640+leftB;topA = Math.abs(random.nextInt())%960;topB = Math.abs(random.nextInt())%960;bottomA = Math.abs(random.nextInt())%960+topA;bottomB = Math.abs(random.nextInt())%960+topB;if (!(leftA>=0 && rightA<960)|| !(topA>=0 && bottomA<640) ||!(rightA>=leftA) || !(bottomA>=topA)){System.out.println("Input error in Rectangle A");result[6]++;continue;}if (!(leftB>=0 && rightB<960)|| !(topB>=0 && bottomB<640) ||!(rightB>=leftB) || !(bottomB>=topB)){System.out.println("Input error in Rectangle B");result[7]++;continue; }统计结果:(2)等价类划分测试用例(双击打开和编辑)序号 A.left A.rightA.topA.bottomB.leftB.rightB.topB.bottom期望输出实际输出1-155********A输入错误A输入错误26505510510510A输入错误A输入错误355510510510A输入错误A输入错误45-1510510510A输入错误A输入错误55650510510510A输入错误A输入错误6510-15510510A输入错误A输入错误75106505510510A输入错误A输入错误851055510510A输入错误A输入错误95105-1510510A输入错误A输入错误105105650510510A输入错误A输入错误11510510-15510B输入错误B输入错误125105106505510B输入错误B输入错误1351051055510B输入错误B输入错误145105105-1510B输入错误B输入错误155105105650510B输入错误B输入错误16510510510-15B输入错误B输入错误175105105106505B输入错误B输入错误1851051051055B输入错误B输入错误195105105105-1B输入错误B输入错误205105105105650B输入错误B输入错误2151051015201520不相交不相交22510510712712相交相交235105106969包含包含2469695105650包含包含25510510510510重合重合2651051010151015相交一个点相交一个点275105101015510相交一条线相交一条线285105105101015相交一条线相交一条线(3)已在visio中画好,双击可打开编辑Starint nMaxLeftint nMaxTopint nMinRig ht int nMinBot tomif (A.left >= B.left)nMaxLef t = A.left nMaxLef t = B.leftif (A.top >= B.topnMaxTop = A.topnMaxTop = B.topif (A.right <= B.right)nMinRig ht = A.rightnMinRig ht = B.rightif (A.bottom<= B.bottom)nMinBot tom = A.botto mnMinBot tom = B.botto m if ((nMaxLeft>nMinRight)|| (nMaxTop> nMinBotto m))nFlag=0nFlag = 1; area = (nMinRig ht - nMaxLef t + 1 ) * (nMinBo ttom - nMaxTop + 1)if ((B.left==A.left) && (B.right==A .right) && (B.top==A.t op) && (B.bottom==A.bottom))nFlag=3else if (((nMaxLeft ==A.left) && (nMinRight ==A.right) && (nMaxTop==A.top) && (nMinBotto m==A.bott om)) ||((nMaxLe ft==B.left) && (nMinRight ==B.right) && (nMaxTop==B.top) && (nMinBotto m==B.bott om)))nFlag=2else if ((nMaxLeft ==nMinRig ht) && (nMaxTop== nMinBotto m))nFlag=4else if (((nMaxLeft ==nMinRig ht) && (nMaxTop< nMinBottom))nFlag=5END123Y4567891011121314151618171920212223242526272829303132333435363738394041NY NY NY NN YYNY Y Y YNNNY Y Y N NNNYYYYNNN NYY NNYY NNYYNNNY V(g)=24+1=25L1:1-2-3-4-6-7-9-10-12-13-15-17-41L2:1-2-3-5-6-7-9-10-12-13-15-17-41L3:1-2-3-4-6-8-9-10-12-13-15-17-41L4:1-2-3-4-6-7-9-11-12-13-15-17-41L5:1-2-3-4-6-7-9-10-12-14-15-17-41L6:1-2-3-4-6-7-9-10-12-13-15-16-17-41L7:1-2-3-4-6-7-9-10-12-13-15-16-18-20-21-22-23-41L8:1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-25-26-27-32-41L9:1-2-3-4-6-7-9-10-12-13-15-16-18-19-20-24-25-26-27-32-41L10:1-2-3-4-6-7-9-10-12-13-15-16-18-19-20-21-24-26-27-32-41L11: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-20-21-22-24-26-27-32-41L12: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-28-29-30-31-32-41L13: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-25-28-29-30-31-32-41L14: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-25-26-28-29-30-31-32-41L15:1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-25-26-27-28-29-30-31-32-41L16: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-25-26-27-32-41L17: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-28-29-33-34-35-41L18: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-28-29-30-33-34-35-41L19: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-28-29-30-31-33-34-35-41L20: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-28-39-30-31-32-41L21: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-28-33-34-36-37-40-41L22: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-28-33-34-36-38-39-40-41L23: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-28-33-34-36-37-38-41L24: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-28-33-34-36-37-38-39-41L25: 1-2-3-4-6-7-9-10-12-13-15-16-18-19-24-28-33-36-37-40-41测试用例:三、实验体会很多BUG都隐藏在随机的测试过程当中,黑盒和白盒测试相辅相成.。

测试实验二

测试实验二
和边界值方法测试程序中的 设计缺陷,给出测试用例和相应的测试结果。
• 2.给出某一天(年,月, 日),计算出它的下一天,取 值范围为: 年:1000<= year <=3000 月:1<=month <=12 日:1<= day <=31 如 1999年3月4日的下一天是:1999年3月5日 • 要求: 输入:三个参数(年,月, 日) 输出:如能正确计算,计算出它的下一天, 否则, 输出相应的错误信息。 请利用决策表法设计出相应的测试用例,并依照测试用 例对所编写的程序进行测试。
实验二 黑盒测试法实验


实验目的:掌握黑盒测试的基本技术和方法, 通过实验和应用,要逐步提高和运用黑盒测试 技术解决实际测试问题的能力。 实验内容:
– 1.编写一个程序,循环从标准输入读入某雇员的工作 时间(以小时计)和每小时的工资数,计算并输出他 的工资。若雇员月工作小时超过40小时,则超过部分 按原工资的1.5倍的加班工资来计算。若雇员月工作 小时超过50小时,则超过50的部分按原工资的3倍的 加班工资来计算,而40到50小时的工资仍按照原工 资的1.5倍的加班工资来计算。

软件测试实验报告黑盒测试判定表

软件测试实验报告黑盒测试判定表

广西师范大学计信学院《软件测试技术》课程实验实验报告题目:黑盒测试法--判定表法班级:学号:姓名:完成日期:实验二黑盒测试法——判定表法实验目的:1.掌握因果图、判定表的方法2.掌握按判定表设计测试用例实验时间:4学时实验内容:1、题目一:隔一天日期问题功能描述:输入年份、月、日;输出:输入日期在日历上的隔一天日期。

如输入1912年12月15日,应输出1912年12月17日。

要求:(1) 读源码并分析程序,给出问题规定的可能采取的操作(即列出所有的动作桩)。

(2) 画出简化后的决策表,设计测试用例。

(3) 执行测试用例,进行测试记录和缺陷统计,给出缺陷报告。

2.程序设计及测试(以下任选一个),要求撰写测试报告(格式参照实验一)。

(1)请自己设计象棋走马问题程序,要求给出需求说明书,采用因果图法或综合采用所学黑盒测试法设计测试用例,并执行测试用例,进行缺陷统计和分析,并修正Bug。

(2)请设计实现简单的计算器功能,要求给出需求说明书,综合采用所学黑盒测试方法设计测试用例集合,并执行测试用例,进行缺陷统计和分析,并修正Bug。

实验过程:实验1:(1)动作桩:A1:day+2 A2:day=2 A3:day=1 A4:month+1 A5:moth=1 A6:year+1 A7:不可能有效等价类:Year:Y1{year是闰年} Y2{year不是闰年}Month:M1{month=4、6、9、11} M2:{month=1、3、5、7、8、10}M3{month=12} M4{month=2}Day:D1{1<=day<=26} D2{day=27} D3{day=28} D4{day=29} D5{day=30}D6{day=31}缺陷:当结果日期需要跳至下一个月时,结果会显示两次。

实验2:条件桩:1、棋子落在棋盘外2、落点未与起点构成日字型3、落点处有己方棋子4、落点处的临近交叉点5、落点处无棋子6、落点处对方棋子不是老将M:1、2、3、4动作桩:1、不移动棋子2、移动棋子3、除去对方棋子4、提示战胜对方,游戏结束#include <iostream>using namespace std;void main(){cout<<"象棋走马问题,根据情况选择回答0、是或1、否"<<endl;cout<<"“马”的落点处是否在棋盘外"<<endl;int a,b,c,d;cin>>a;cout<<"“马”的落点与起点是否不成“日”字型"<<endl;cin>>b;cout<<"“马”的落点处是否有其他己方棋子"<<endl;cin>>c;cout<<"“马”的落点临近交叉点是否有棋子"<<endl;cin>>d;int x,y;cout<<"“马”的落点处是否有棋子"<<endl;cin>>x;cout<<"“马”的落点出的棋子是否为老将"<<endl;cin>>y;if(a==0&&b==0&&c==0&&d==0)cout<<"不移动棋子"<<endl;if(a==1&&b==1&&c==1&&d==1&&x==1)cout<<"移动棋子"<<endl;if(a==1&&b==1&&c==1&&d==1&&x==0&&y==1)cout<<"移动棋子并出去对方棋子"<<endl;if(a==1&&b==1&&c==1&&d==1&&x==0&&y==0)cout<<"移动棋子并提示战胜对方,游戏结束"<<endl;if(a>1||b>1||c>1||d>1||x>1||y>1)cout<<"输入不规范"<<endl;}程序缺陷:每次运行程序,即使中途就出现输入不规范,但是仍要到最后才能提示出来。

黑盒测试实验报告

黑盒测试实验报告

黑盒测试实验报告软件测试实验报告----黑盒测试一.实验内容使用黑盒测试技术设计一个自动售货机上的系统。

自定义自动售货机只卖三种饮料:可口可乐,雪碧,百事可乐,单价分别为2.5元,2.5两元,2元。

假设输入饮料类别及需要的数量,如果输入的金额数足够,直接送出饮料,退回零钱,如果输入的金额不够,有提示可以继续输入钱币。

自动售货机运行界面如下:二、黑盒测试(1)测试用例一(2)测试用例二具体操作实践如下:三代码#include void main(){int n,m,i;for(i=0;i<100;i++){cout<<"欢迎使用自动售货机系统!\" ;cout<<"请选择商品\";cout<< "1 可口可乐2.5元\";cout<< "2 雪碧2.5元\";cout<< "3 百事可乐2元\";cout<< " 4 结束购物\";cin>>n;if(n==1){cout<<"你选择的是可口可乐\";cout<<"请选择投币种类\";cout<< "1 2.5元\";cout<< "2 3元\";cout<< "3 5元\";cout<< "4 1元\";cin>>m;if(m==1){cout<<"付款金额正好,请取走商品\";}else if(m==2){cout<<"找您0.5元\";}else if(m==3){ cout<<"找您2.5元\";} else {cout<<”钱不够!”;}}if(n==2){cout<<"你选择的是雪碧\";cout<<"请选择投币种类\";cout<< "1 2.5元\";cout<< "2 3元\";cout<< "3 5元\";cout<< "4 1元\";cin>>m;if(m==1){cout<<"付款金额正好,请取走商品\";}else if(m==2){cout<<"找您0.5元\";}else if(m==3){ cout<<"找您2.5元\";} else {cout<<”钱不够!”;}}if(n==3){"你选择的是百事可乐\";cout<<"请选择投币种类\";cout<< "1 2.5元\";cout<< "2 3元\";cout<< "3 5元\";cout<< "4 1元\";cin>>m;if(m==1){cout<<"找您0.5元\\\";}else if(m==2){cout<<"找您1元\";}else if(m==3){ cout<<"找您2元\";} else {cout<<”钱不够!”;}}if(n==4)cout<<"谢谢惠顾!"<<="">}。

软件工程实验报告

软件工程实验报告

软件工程实验报告学号:姓名:专业:年月实验一:白盒测试一、实验目的巩固白盒测试知识,对于给定的待测程序,能熟练应用基本控制流覆盖方法设计测试用例;能够执行白盒测试过程,并撰写白盒测试分析报告。

二、实验内容白盒测试又称为结构测试、逻辑驱动测试或基于程序的测试,一般用来分析程序的内部结构。

测试规划基于产品内部结构进行测试,检查内部操作是否按规定执行,软件各个部分功能是否得到充分使用,则这种测试方法称为白盒测试方法。

白盒测试将被测程序看做一个打开的盒子,测试者能够看到被测源程序,可以分析被测程序的内部结构,此时测试的焦点集中在根据其内部结构设计测试用例。

白盒测试要求是对某些程序的结构特性做到一定程度的覆盖,或者说这种测试是“基于覆盖率的测试”。

测试内容包括语句覆盖测试、分支覆盖测试、条件覆盖测试、分支/条件覆盖测试、条件组合覆盖测试和基本路径测试。

三、程序代码要求:实现对不少于10个随机输入的数的冒泡排序算法。

#include<iostream>using namespace std;int main(){double a[100];int N;int i = 0, j = 0;cin >> N;//排序元素的个数for (i = 0; i <= N; i++){cin >> a[i];}for (i = 0; i < N-1 ; i++) {for (j = 0; j < N - 1 - i; j++){if (a[j] > a[j + 1]) {int tmp;tmp = a[j];a[j] = a[j + 1];a[j + 1] = tmp;}}}for (i = 0; i < N; i++){cout << a[i] <<" ";}cout << endl;return 0;}四、程序流程图五、测试内容(1)语句覆盖测试测试结果:①②测试结果分析:输入元素时需要输入的元素个数大于最初输入的元素个数。

实验二 黑盒测试方法

实验二 黑盒测试方法

实验二:黑盒测试一、实验目的(1)能熟练应用黑盒测试技术进行测试用例设计;(2)对测试用例进行优化设计;(3)思考如何执行测试;二、实验内容:从问题一或问题二中选一个或可自定测试的内容进行测试。

问题一:日期问题描述程序有三个输入变量month、day、year(month、day和year均为整数值,并且满足:1≤month≤12、1≤day≤31、1900≤year ≤2050。

),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上下一天的日期。

例如,输入为2005年11月29日,则该程序的输出为2005年11月30日。

请用黑盒测试方式设计测试用例。

请选择适当的黑盒测试方法设计出相应的测试用例。

程序界面问题二描述:有一个处理单价为5角钱的饮料的自动售货机,相应规格说明如下:若投入5角钱或1元钱的硬币,按下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。

(每次只投入一个硬币,只按下一种饮料的按钮) 如投入5角的硬币,按下按钮后,总有饮料送出。

若售货机没有零钱找,则一个显示〖零钱找完〗的红灯会亮,这时再投入1元硬币并按下按钮后,饮料不送出来而且1元硬币也退出来。

若有零钱找,则显示〖零钱找完〗的红灯不会亮,若投入1元硬币及按饮料按钮,则送出饮料的同时找回5角硬币。

请选择适当的黑盒测试方法设计出相应的测试用例。

【实验步骤】(1)根据题目要求设计编写程序代码,编程语言不限。

(2)与其它同学交换代码,即每位同学测试其它同学的程序。

(3)使用等价类法或边界值法或判定表法或几种方法综合使用来设计测试用例。

(4)考虑如何执行测试。

(5)撰写测试分析报告。

三、实验要求(1)根据题目要求编写测试用例;(2)撰写实验报告,在实验报告中写下你的问题;四、思考与讨论(1)在实际的测试中,如何设计测试用例才能达到用最少的测试用例检测出最多的缺陷;(2)在进行用例设计时,如何考虑软件测试用例的充分性和减少软件测试用例的冗余性;(3)如何组织实施测试?五、其它说明:1、实验结束上交资料包括:被测程序、设计的测试用例(包括划分的等价类或判定表等)、错误记录,可参考用例模板(网络课堂的教学资料中或ftp://172.31.214.12/pub/海辉/实验资料/有下载)。

黑盒测试实验二

黑盒测试实验二

黑盒测试实验二1.1 实验类型实验类型为验证型,3个学时。

1.2 实验目的(1)能熟练应用黑盒测试技术进行测试用例设计;(2)对测试用例进行优化设计;1.3 背景知识功能测试是指在对程序进行功能抽象的基础上,将程序划分成功能单元,然后在数据抽象的基础上,对每个功能单元生成测试数据进行测试。

进行功能测试时,被测程序被当作打不开的黑盒,因而无法了解其内部构造,因此又称为黑盒测试。

一、等价类测试等价类测试方法是把所有可能的输入数据,即程序的输入域划分成若干部分,然后从每一部分中选取少数有代表性的数据作为测试用例。

使用等价类划分方法设计测试用例要经历划分等价类(列出等价类表)和选取测试用例两步。

等价类的划分有两种不同的情况:①有效等价类:是指对于程序的规格说明来说,是合理的,有意义的输入数据构成的集合。

②无效等价类:是指对于程序的规格说明来说,是不合理的,无意义的输入数据构成的集合。

在设计测试用例时,要同时考虑有效等价类和无效等价类的设计。

用等价类划分法设计测试用例步骤:(1) 形成等价类表,每一等价类规定一个唯一的编号;(2) 设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类,重复这一步骤,直到所有有效等价类均被测试用例所覆盖;(3) 设计一个新测试用例,使其只覆盖一个无效等价类,重复这一步骤直到所有无效等价类均被覆盖。

二、边界值测试1.边界值分析边界值分析是考虑边界条件而选取测试用例的一种功能测试方法。

边界值分析关注输入空间的边界,以标识测试用例,因为错误更可能出现在输入变量的极值附近。

边界值分析的基本思想是:利用输入变量的最小值(min)、略大于最小值(min+)、正常值(nom)、略小于最大值(max-)和最大值(max)来设计测试用例。

使用在最小值、略高于最小值、正常值、略低于最大值和最大值处取输入变量值。

在边界值分析法中获取测试用例的方法是:1)每次保留程序中一个变量,让其余的变量取正常值,被保留的变量依次取min、min+、nom 、max-和max 作为有效边界值;依次取min- 和max+作为无效边界值。

实验二__黑盒测试

实验二__黑盒测试

实验二黑盒测试(二)----因果图法、决策表法一、实验目的1、掌握黑盒测试的基础知识;2、掌握黑盒测试的检查内容及测试目的;3、掌握黑盒测试的二种基本测试方法:因果图法和决策表法;二、实验要求1、复习教材的有关内容,理解黑盒测试;2、掌握因果图法和决策表法,并能设计出测试用例;3、对具体软件,能分别使用相应的黑盒测试方法设计测试用例,并实施测试、分析测试结果。

4、实验前认真听讲,服从安排。

独立思考完成实验。

三、实验设备与器材a)硬件:P4以上计算机,512M内存以上,2G以上空闲硬盘空间b)软件:操作系统、OFFICE软件四、实验原理1、黑盒测试的目的和检查内容;2、因果图法和决策表法;3、根据黑盒测试方法设计测试用例及实施测试。

五、实验内容复习:利用因果图设计测试用例步骤⏹ 1.分析程序规格说明的描述中,哪些是原因,哪些是结果✦原因常常是输入条件或是输入条件的等价类;✦结果是输出条件;⏹ 2.分析程序规约的描述中语义的内容,并将其表示成连接各个原因与各个结果的“因果图”3.在因果图上使用若干个特殊的符号标明约束条件4.把因果图转换成判定表5.把判定表中每一列表示的情况写成测试用例1.以中国象棋中马的走法为例,请绘制出因果图和判定表。

马的走法说明:(1)如果落点在棋盘外,则不移动棋子;(2)如果落点与起点不构成日字型,则不移动棋子;(3)如果落点处有自己方棋子,则不移动棋子;(4)如果在落点方向的邻近交叉点有棋子(绊马腿),则不移动棋子;(5)如果不属于1-4条,且落点处无棋子,则移动棋子;(6)如果不属于1-4条,且落点处为对方棋子(非老将) ,则移动棋子并除去对方棋子;(7)如果不属于1-4条,且落点处为对方老将,则移动棋子,并提示战胜对方,游戏结束。

用因果图法测试该程序,并撰写实验报告。

实验步骤:①分析原因与结果②画出因果图③转化为决策表④根据决策表设计测试用例,得到测试用例表⑤执行测试,填写软件缺陷报告⏹复习判定表建立步骤⏹根据软件规格说明✦①列出所有的条件桩和动作桩;✦②确定规则的个数;⏹假如有n个条件,每个条件有两个取值(0,1),则有2n 种规则;✦③填入条件项;✦④填入动作项,得到初始决策表;✦⑤简化,合并相似规则(相同动作)。

第二章黑盒测试

第二章黑盒测试

2.2 等价类划分
2.2.2 等价类划分法的测试运用 1.三角形问题的等价类测试 【例2.1】 三角形问题是软件测试文献中使用最广泛的一个 例子。输入三个整数a、b和c分别作为三角形的3条边,通过 程序判断由这3条边构成的三角形类型是:等边三角形、等腰 三角形、一般三角形或非三角形(不能构成一个三角形)。
年龄
性别
婚姻状况
20~39 40~59 其它 M F 已婚 未婚
6点
4点 2点 4点 3点 3点 5点
抚养人数
1人扣0.5点, 最多扣3点
2.2.2 等价类划分法的测试运用
分析程序规格说明中给出和隐含的对输入数据的要求,可以 得出: ① 年龄:一位或两位非零整数,取值的有效范围为1~99。 ② 性别:一位英文字符,只能取 ‘M’或’F’ 值。 ③ 婚姻:字符,只能取‘已婚’或‘未婚’。 ④ 抚养人数:空白或字符‘无’或一位非零整数(1~9) ⑤ 点数 :一位或两位非零整数,取值范围为8~19 通过对规格说明输入数据的取值分析,可以得出保险公司人 寿保险保费计算程序的等价类。
0.2
50 提示“请输入1~100间的整数”
2.3.2边界值分析法的测试运用
测试用例
Test14 Test15 Test16 Test17 Test18 Test19 Test20 Test21 Test22
加法器边界测试用例
输入数据
预期输出
加数1 加数2

50
0.2 提示“请输入1~100间的整数”
2.3.2边界值分析法的测试运用
应用边界值分析法进行测试用例设计时,应遵循以下一些原 则:
(1)如果输入条件对取值范围进行了限定,则应以边界内部以及刚超 出范围边界外的值作为测试用例。

黑盒测试实验报告

黑盒测试实验报告

实验一黑盒测试一、实验目的通过对于实例程序的测试,熟悉功能性测试的基本方法。

二、实验要求(1)综合运用功能性测试方法(如边界值分析、等价类划分等方法)对被测程序进行测试,找出black.exe程序中存在的缺陷。

三、实验内容(1)对于blackBox.exe程序的测试步骤:①运行black.exe程序,如下图所示:②选择triangle program后(或nextdate program, commission program,要求至少做两个程序的测试),如下图所示:③点击create file names,如下图所示:提示输入测试用例文件,如1.txt后点击ok,1中的数据格式如下:(其中前3个数据表示输入的三条边,第4个数据表示预期的结果)如下图所示,输入执行结果的文件2.txt :再次点击ok,提示输入测试结果文件记录集的题头信息:sanjiaoxing,点击ok,完成测试前的准备工作。

④点击Run Test Cases File,运行测试;⑤测试后的统计信息如下图所示:⑥测试完成后,打开2.txt文件:(前3个条件表示输入的三条边,第4个表示预期结果,第5个表示测试结果,第6个表示测试结果与预期结果是否符合。

)2①运行black.exe程序②选择nextdate program,③点击create file names,如下图所示:提示输入测试用例文件,如3.txt后点击ok,3中的数据格式如下:如下图所示,输入执行结果的文件4.txt :④点击Run Test Cases File,运行测试;⑤测试后的统计信息如下图所示:⑥测试完成后,打开4.txt文件:1)案例描述:某三角形测试程序中需要输入三条表,若三边相等:等腰三角形,两边相等:等腰三角形;若三边不等:斜边边三角形。

案例第一步划分等价类。

第二步设计测试用例设三边分别为a,b,c2)案例描述:案例按月,日,年输入数据。

输出当天的下一天,第二步测试用例。

【最新精选】黑盒测试实验报告

【最新精选】黑盒测试实验报告

【最新精选】黑盒测试实验报告班级:软件114姓名:蔡双江学号:1108203422一、实验目的:1 通过实验进一步掌握黑盒测试方法。

2 通过实验熟悉使用等价类划分法和边界值分析法设计测试用例。

二、实验内容:1、实验一输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数,请按要求设计测试用例输入数据说明:有效等价类无效等价类字母 a~z、A~Z 无数字数字中任意一个无其他字符转义字符、标点符号等无空格无一个测试用例应尽可能覆盖多个有效类,并且该实验不存在无效等价类故只需设计一个测试用例即可:测试用例编号 1输入操作预期输出实际输出A@1你好统计字符数目字母:1 字母:1其他字符:3 其他字符:3数字字符:1 数字字符:1空格:12、实验二有函数f(x,y,z),其中x?[1900,2100],y?[1,12],z?[1,31]的。

请写出该函数采用边界值分析法设计的测试用例。

用例编号 x y z1 1900 1 12 2100 12 313 1899 1 14 2101 12 315 1900 0 16 1900 1 07 2100 13 318 2100 12 32测试用例编号 1输入操作预期输出实际输出 x=1900函数调用并计算 y=1 f(1900,1,1) f(1900,1,1) z=1测试用例编号 2输入操作预期输出实际输出 x=2100函数调用并计算 y=12 f(2100,12,31) f(2100,12,31) z=31测试用例编号 3输入操作预期输出实际输出 x=1899函数调用并计算 y=1 Error Error z=1测试用例编号 4输入操作预期输出实际输出 x=2101函数调用并计算 y=12 Error Error z=3测试用例编号 5 输入操作预期输出实际输出 x=1900函数调用并计算 y=0 Error Error z=1测试用例编号 6 输入操作预期输出实际输出 x=1900函数调用并计算 y=1 Error Error z=0测试用例编号 7 输入操作预期输出实际输出 x=2100函数调用并计算 y=13 Error Error z=31测试用例编号 8 输入操作预期输出实际输出 x=2100函数调用并计算 y=12 Error Error z=323、实验三:找零钱最佳组合假设商店货品价格(R) 都不大于100元(且为整数),若顾客付款(P)在100元内,现有一个程序能在每位顾客付款后给出找零钱的最佳组合(找给顾客货币张数最少)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

南京信息工程大学软件质量控制和测试实验(实习)报告实验(实习)名称黑盒测试(一)实验(实习)日期 2011-11-28 得分指导老师徐旦华系计算机与软件学院专业软件工程班级 1班姓名刘荣静学号 20091344007 一、实验目的
理解黑盒测试的基本方法,掌握用判定表、因果图法测试用例的设计方法。

二、实验时间
2学时
三、实验准备
PC 机一套,要求安装windows 操作系统和Office等工具软件;
四、实验内容
1.题目一:某软件的一个模块的需求规格说明书中描述:
a)年薪制员工:严重过失,扣年终风险金的4%;过失,扣年终风险金的2%。

b)非年薪制员工:严重过失,扣当月薪资的8%;过失,扣当月薪资的4%。

请绘制出因果图和判定表,并给出相应的测试用例。

2.题目二:有一个处理单价为2.5元的盒装饮料的自动售货机软件。

若投入2.5元硬币,按“可乐”、“啤酒”、或“奶茶”按钮,相应的饮料就送出来。

若投入的是3元硬币,在送出饮料的同时退还5角硬币。

请绘制出因果图和判定表,并给出相应的测试用例。

五、题目一
(1)题目一的因果图
画出因果图:
E
(2) 题目一的判定表
1、列出所有的条件桩和动作桩 条件桩:C1:是否为年薪制员工? C2:是否为严重过失? C3:是否为过失?
动作桩:A1:扣除年终风险金的4% A2:扣除年终风险金的2% A3:扣除当月月薪资的8% A4:扣除当月月薪资的4%
A5:无扣除 A6:不可能
2、确定规则的个数 ● 输入条件个数:3
● 每个条件的取值:“是”或“否” ● 规则个数:2*2*2=8
4、化简
六、题目二(1)题目二的因果图
(2
七、实验体会
通过两次实验理解了黑盒测试的基本方法,并掌握了用判定表、因果图法测试用例的设计方法。

整个实验过程,独立自主完成的,对于黑盒测试有了进一步深入的了解。

(注:可编辑下载,若有不当之处,请指正,谢谢!)。

相关文档
最新文档