《软件测试与质量保证》基础性实验.docx

上传人:小飞机 文档编号:1687352 上传时间:2022-12-14 格式:DOCX 页数:36 大小:334.96KB
返回 下载 相关 举报
《软件测试与质量保证》基础性实验.docx_第1页
第1页 / 共36页
《软件测试与质量保证》基础性实验.docx_第2页
第2页 / 共36页
《软件测试与质量保证》基础性实验.docx_第3页
第3页 / 共36页
《软件测试与质量保证》基础性实验.docx_第4页
第4页 / 共36页
《软件测试与质量保证》基础性实验.docx_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《《软件测试与质量保证》基础性实验.docx》由会员分享,可在线阅读,更多相关《《软件测试与质量保证》基础性实验.docx(36页珍藏版)》请在三一办公上搜索。

1、学 生 实 验 报 告 学 院: 用友软件学院 课程名称: 软件测试与质量保证 专业班级: 软件08级4班 学 号: 0088225 姓 名: 陈 贝 贝 学生实验报告(一)学生姓名陈贝贝学号0088225同组人:无实验项目被测程序的准备必修 选修 演示性实验 验证性实验 操作性实验 综合性实验实验地点H123实验仪器台号H123-*指导教师段喜龙实验日期及节次2011.9.13 567节一、实验综述1、实验目的及要求实验目的:完成测试程序的编写,后续的实验将以这些程序作为测试对象用不同的测试方法来进行测试。实验要求:(1)设计工具不限(2)保证程序功能的正确实验内容:三角形问题、日期操作函数

2、、计算佣金问题2、实验仪器、设备或软件1. 个人计算机PC;2. VisualC+/.NET 二、实验过程(实验步骤、记录、数据、分析)(1) 步骤一l 三角形问题 问题描述从键盘输入三角形三条边a、b、c(三角形长度均在1,200范围),判断该三角形是什么三角形(等腰、等边、直角、等腰直角、一般、非),并从屏幕上输出结果。测试方法:等价类。边界值法一般用于输入数相对独立的情况。因为这里在判断是否构成三角形满足条件时,三条边之间相互有关联,所以选择等价类方法进行测试。 编写代码#include #include /检查是否合法int check(float a,float b,float c)

3、if(a=1&a=1&b=1&cc)&(a+cb)&(b+ca)/满足构成三角形的条件if(a=b&(a!=c)|(a=c&(a!=b)|(c=b&(a!=c)/满足等腰三角形的条件判断if(abs(a*a+b*b-c*c=0.01)|(abs(a*a+c*c-b*b=0.01)|(abs(c*c+b*b-a*a=0.01)printf(等腰直角三角形);elseprintf(等腰三角形);else if(a=c&a=b)/判断等边三角形printf(等边三角形);else if(a*a+b*b=c*c)|(a*a+c*c=b*b)|(c*c+b*b=a*a)/判断直角三角形printf(直角

4、三角形);else printf(一般三角形);elseprintf(非三角形!);else printf(超出题目边长范围!);return 0;void main()float a=0,b=0,c=0;printf(请输入1-200之间的数作为三角形的三边边长a,b,c:n);scanf(%f,&a);scanf(%f,&b);scanf(%f,&c);check(a,b,c);l 求下一天 问题描述请编写求给定日期的下一日(Nextdate)程序,输入年1812,2012、月、日,输出该合法日期的下一日。测试方法:等价类方法。输入三个数中,年月日之间相互有关联并没有完全性独立,所以使用等

5、价类方法更好。 编写代码#include int check(int y,int m,int d)if(y2012)return 0;else if(m12)return 0;else if(d31)return 0;else if(m=2&d29)return 0;else return 1;int isleapyear(int y) if(y%4=0&y%100!=0)|(y%400=0)return 1; else return 0;int dm(int month)return (month=4|month=6|month=9|month=11);int sm(int month)re

6、turn (month=1|month=3|month=5|month=7|month=8|month=10|month=12);int nextdate()int year,int month,int day;printf(请输入年:);scanf(%d,&year);printf(月:);scanf(%d,&month);printf(日:);scanf(%d,&day);if(check(year,month,day)if(day=28&month=2&!isleapyear(year)|(day=29&month=2&isleapyear(year)day=1;month=3;else

7、 if(day=30&dm(month)|(day=31&sm(month)day=1;month+;else day+;if(month12)month=1; +year;if(!check(year,month,day)printf(输入有误);return 0;printf(下一天是%d-%d-%dn,year,month,day);else printf(日期不合法n);return 0;void main()char i=Y;while(i=Y)printf(是否开始计算:Y/Nn);scanf(%c,&i);if(i=N|i=n)printf(停止运算!);break;elsene

8、xtdate();printf(n);l 佣金问题 问题描述前亚利桑那洲境内的一位步枪销售商销售密苏里州制造商制造的步枪机(lock)、枪托(stock)和枪管(barrel)。枪机卖45美元,枪托卖30美元,枪管卖25美元。销售商每月至少要售出一支完整的步枪,且生产限额是大多数销售商在一个月内可销售70个枪机、80个枪托和90个枪管。 根据当月的销售情况,并计算销售商的佣金如下:不到(含)1000美元的部分为10%;1000(不含)1800(含)美元的部分为15%;超过1800美元的部分为20%。佣金程序生成月份销售报告,汇总售出的枪机、枪托和枪管总数,销售商的总销售额以及佣金。 编写程序代

9、码int a = 45, b = 30, c = 25;/变量a,b,c分别为枪机枪托枪管的价格 int aNum = 1, bNum = 1, cNum = 1;/枪机枪托枪管的个数,默认值为1 double sum = 10.00;/销售的佣金,默认值为10元 Console.WriteLine(请输入已销售的枪机的数量,1-70个之间:); aNum = int.Parse(Console.ReadLine().Trim(); if (aNum 70 | aNum 80 | bNum 90 | cNum 1) Console.WriteLine(输入枪管数不合法,请输入1-90之间的个数

10、!); else Console.WriteLine(这个月结束,开始计算佣金); if (aNum * a + bNum * b + cNum * c) 1000 & (aNum * a + bNum * b + cNum * c) = 1800)/大于1000不超过1800的部分 sum = 100 + (aNum * a + bNum * b + cNum * c) - 1000) * 0.15; else/超过1800的部分 sum = 220 + (aNum * a + bNum * b + cNum * c) - 1800) * 0.2; Console.WriteLine(枪机

11、+ aNum + 个); Console.WriteLine(枪托 + bNum + 个); Console.WriteLine(枪管 + cNum + 个); Console.WriteLine(销售总额 + (aNum * a + bNum * b + cNum * c) + 个); Console.WriteLine(佣金 + sum + 元); Console.ReadLine(); Console.ReadLine();(2) 步骤二分别运行程序检查有无语法错误。l 三角形问题l 日期问题l 佣金问题三、结论1、实验结果程序均能正常运行l 三角形问题l 日期问题l 佣金问题2、分析讨

12、论l 代码书写规范,有利于检查代码错误。l 复习了一些常用的编程语句结构。四、指导教师评语及成绩:评语:成绩: 指导教师签名: 批阅日期:36学生实验报告(二)学生姓名陈贝贝学号0088225同组人:无实验项目边界值测试用例的生成必修 选修 演示性实验 验证性实验 操作性实验 综合性实验实验地点H123实验仪器台号H123-*指导教师段喜龙实验日期及节次2011.10.11 567节一、实验综述1、实验目的及要求实验目的:掌握边界值测试方法中边界值分析、健壮性测试等基本方法。实验要求:(1)完成各个程序的编写(2)按要求设计测试用例,并运行测试用例检查程序的正确与否实验内容:对三角形问题、日期

13、操作函数、计算佣金问题进行边界值测试方法的测试用例设计及测试结果记录与分析。2、实验仪器、设备或软件1. 个人计算机PC;2. VisualC+/.NET编程环境。二、实验过程(实验步骤、记录、数据、分析)(1) 步骤一l 用例设计三角形序号输入预期输出实际输出结果ABC1345直角三角形直角三角形Pass2012超出题目边长范围超出题目边长范围Pass3002超出题目边长范围超出题目边长范围Pass4000超出题目边长范围超出题目边长范围Pass511200非三角形非三角形Pass6200200201超出题目边长范围超出题目边长范围Pass72012011超出题目边长范围超出题目边长范围pa

14、ss8200200200等边三角形等边三角形Pass922224等腰直角三角形等腰直角三角形Pass10.超出题目边长范围超出题目边长范围Pass11a3超出题目边长范围超出题目边长范围Pass1234输入错误无返回值Fail133441输入错误等腰三角形Faill 下一天序号输入预期输出实际输出结果年月日11988231988-2-41988-2-4pass220002292000-3-12000-2-30Fail320012282001-3-12001-3-1pass4100123日期不合法日期不合法pass5230032日期不合法日期不合法pass6191204日期不合法日期不合法pas

15、s71922201日期不合法日期不合法pass820113-1日期不合法日期不合法pass92011333日期不合法2011-3-34Fail102000230日期不合法日期不合法pass1120042292004-2-292004-2-30Faill 佣金问题序号输入预期输出实际输出结果枪机枪托枪管销售额佣金销售额佣金1011输入枪管数不合法输入枪管数不合法pass2101输入枪托数不合法输入枪托数不合法pass3110输入枪机数不合法输入枪机数不合法pass47111输入枪机数不合法输入枪机数不合法pass51811输入枪托数不合法输入枪托数不合法pass61191输入枪管数不合法输入枪管

16、数不合法pass75555005050050pass815151515001751500175Pass925252525003602500360pass(2) 步骤二测试执行记录l 三角形编号12中,输入3,4。无返回值。 编号13中,无效等价类测试中,输入3 4 4 1四个数后,输出等腰三角形。l 下一天编号3 输入2000年2月29日编号9输入2011年3月33日编号11 输入2004年2月29日l 佣金问题无明显逻辑错误。三、结论1、实验结果l 三角形结果分析通过用例测试,发生的错误可能在于编写程序人员考虑输入情况不严谨,仅考虑了有效情况。该缺陷的严重程度一般以及修复优先级中。l 下一天

17、结果分析通过用例测试,发生的错误可能在于编写程序人员考虑情况不严谨,一些判断上出现了严重问题。该缺陷的严重程度严重以及修复优先级高。主要错误在于对于2月份的闰年,平年的天数判断上。l 佣金问题结果分析对于用例11,12,13的测试,因为考虑情况不严谨,所以没有直观的表示方式,而是因为编写程序自身判断终止了程序。该缺陷的严重程度一般以及修复优先级中。2、分析讨论1.定义:边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。 2.特点:边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。3.边界

18、值分析方法的考虑:使用边界值分析方法设计测试用例,首先应确定边界情况。通常输入和输出等价类的边界,就是应着重测试的边界情况。应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。 4.常见的边界值 1)对16-bit 的整数而言 32767 和 -32768 是边界 2)屏幕上光标在最左上、最右下位置 3)报表的第一行和最后一行 4)数组元素的第一个和最后一个 5)循环的第 0 次、第 1 次和倒数第 2 次、最后一次5.边界值分析 1)边界值分析使用与等价类划分法相同的划分,只是边界值分析假定错误更多地存在于划分的边界上,因此在等价类的边界

19、上以及两侧的情况设计测试用例。 例:测试计算平方根的函数 -输入:实数 -输出:实数 -规格说明:当输入一个0或比0大的数的时候,返回其正平方根;当输入一个小于0的数时,显示错误信息平方根非法-输入值小于0并返回0;库函数Print-Line可以用来输出错误信息。四、指导教师评语及成绩:评语:成绩: 指导教师签名: 批阅日期:学生实验报告(三)学生姓名陈贝贝学号0088225同组人:无实验项目等价类测试用例的生成必修 选修 演示性实验 验证性实验 操作性实验 综合性实验实验地点H123实验仪器台号H123-*指导教师段喜龙实验日期及节次2011.11.1 567节一、实验综述1、实验目的及要求

20、实验目的:掌握等价类测试方法中弱一般、强一般、弱健壮以及强健壮等基本方法的原理及使用。实验要求:(1)完成各个程序的编写(2)按要求设计测试用例,并运行测试用例检查程序的正确与否实验内容:对三角形问题、日期操作函数、计算佣金问题进行等价类测试方法的测试用例设计及测试结果记录与分析。2、实验仪器、设备或软件1. 个人计算机PC;2. VisualC+/.NET编程环境。二、实验过程(实验步骤、记录、数据、分析)(1) 步骤一l 技术运用分析 三角形问题等价类中有效等价类与无效等价类2种情况进行测试。有效等价类: 输入3个正整数或正小数: 1、两数之和大于第三数,如AB+C;BC+A;CA+B 2

21、、两数之和不大于第三数 3、两数相等,如A=B或B=C或C=A 4、三数相等,如A=B=C 5、三数不相等,如A!=B,B!=C,C!=A 无效等价类: 1、空 2、负整数 3、非数字 4、少于或多于三个数经过分析可以得到判断是否是三角形问题的等价类输入三个整数有效等价类编号无效等价类编号整数1一边为非整数二边为非整数三边均为非整数4563个数2只有一条边只有二条边多余三条边7891=a=2001=b=2001=c=2003a=0a=0,b=0a=b=c=0101112a0a0,b0a0,b0,c200a200,b200a200,b200,c200161718依题意类推是否是三角形 有效等价类

22、 序号(A0) (B0) (C0) (A+BC) (B+CA) (C+AB) (19)(A+B=C) (20)(B+C=A) (21)(C+A=B) (22)是否是等腰三角形 (A=B) (23) (B=C) (24)(C=A) (25) (A!=B)and(B!=C)and(C!=A) (26)是否是等腰直角三角形 :(A=B)and(A2+B2=C2) (27)(B=C)and(B2+C2=A2) (28) (C=A)and(C2+A2=B2) (29) 是否是等边三角形 :(A=B)and(B=C)and(C=A) (30) (A!=B) (31)(B!=C) (32)(C!=A) (3

23、3) 下一天l 等价类方法进行测试输入条件编号有效等价类编号无效等价类输入年份(1)1812=年=2012(7)年2012输入月份(2)1=月=12(9)月12输入日期(3)1=日=31(11)日期31输入类型(4)输入整数(13)输入出了整数以外的任意数输入为闰年(5)输入2月29(14)输入为2000年2月30输入为平年(6)输入2月28(15)输入2001年2月28l 决策表测试分析M1 = 月份:每月有30天 M2 = 月份:每月有31天,12月除外 M3 = 月份:此月是12月 M4 = 月份:此月是2月D1 = 日期:1日期27D2 = 日期:日期=28D3 = 日期:日期=29D

24、4 = 日期:日期=30D5 = 日期:日期=31Y1 = 年:年是闰年Y2 = 年:年是平年选项编号C1:月份在:C2:日期在:C3:年在:a1:不可能a2:日期增1a3:日期复位a4:月份增1a5:月份复位a6:年增11M1D12M1D23M1D34M1D45M1D56M2D17M2D28M2D39M2D410M2D511M3D112M3D213M3D314M3D415M3D516M4D117M4D2Y118M4D2Y219M4D3Y120M4D3Y221M4D422M4D5对决策表进行精简精简后的决策表如下:选项编号C1:月份在:C2:日期在:C3:年在:a1:不可能a2:日期增1a3:

25、日期复位a4:月份增1a5:月份复位a6:年增11-3M1D1,D2, D34M1D45M1D56-9M2D1, D2 ,D3,D4,10M2D511-14M3D1 ,D2,D3,D415M3D516M4D117M4D2Y118M4D2Y219M4D3Y120M4D3Y221-22M4D4 ,D5 佣金问题等价类测试用例,它是根据佣金函数的输出值域定义边界值,来改进测试用例集合。有效等价类 枪机(lock)a、枪托(stock)b和枪管(barrel)c中1=a=701=b=801=c=90假设输出销售额为x元则x1000元 佣金=x*1010001800 佣金=220+(x-1800)*20

26、%输入条件编号有效等价类编号无效等价类分别输入枪机a,枪托b,枪管c三个数(1)1=a=70(2)a701=b=80(4)b801=c=90(6)c90输入类型(8)整数(9)非整数输入个数(10)3个数(11)少于3个数(12)多余3个数(2) 步骤二l 测试用例设计 三角形问题序号输入预期输出实际输出结果覆盖等价类ABC1345直角三角形直角三角形Pass(1)(2)(3)(19)(26)(30)(32)(33)(34)2012超出题目边长范围超出题目边长范围Pass(10)3002超出题目边长范围超出题目边长范围Pass(11)4000超出题目边长范围超出题目边长范围Pass(12)51

27、23非三角形非三角形Pass(20)6132非三角形非三角形Pass(21)7312非三角形非三角形Pass(22)8334等腰三角形等腰三角形Pass(1)(2)(3)(19)(23)9344等腰三角形等腰三角形Pass(1)(2)(3)(19)(24)10343等腰三角形等腰三角形Pass(1)(2)(3)(19)(25)1122224等腰直角三角形等腰直角三角形Pass(1)(2)(3)(4)(5)(6)(19)(27)1242222等腰直角三角形等腰直角三角形Pass(1)(2)(3)(4)(5)(6)(19)(28)1322422等腰直角三角形等腰直角三角形Pass(1)(2)(3)

28、(19)(29)14333等边三角形等边三角形Pass(1)(2)(3)(19)(26)(31)15.超出题目边长范围超出题目边长范围Pass(6)16-345超出题目边长范围超出题目边长范围Pass(13)17a3超出题目边长范围超出题目边长范围Pass(5)1834输入错误无返回值Fail(8)193441输入错误等腰三角形Fail(9) 下一天程序用例设计序号输入预期输出实际输出结果覆盖等价类年月日11988231988-2-41988-2-4pass(1)(2)(3)(4),6-9,16220002292000-3-12000-2-30Fail(5)320012282001-3-120

29、01-3-1pass(6),184100123日期不合法日期不合法pass(7)5230032日期不合法日期不合法pass(8)6191204日期不合法日期不合法pass(9)71922201日期不合法日期不合法pass(10)820113-1日期不合法日期不合法pass(11)92011333日期不合法2011-3-34Fail(12)10Aabc日期不合法日期不合法pass(13)112000230日期不合法日期不合法pass(14)1220042292004-2-292004-2-30Fail(15),191320014152001-4-162001-4-16Pass1-31420014

30、302001-5-12001-5-1Pass4152001431日期不合法2001-4-32Fail51620011312001-2-12001-2-1Pass1017200112152001-12-162001-12-16Pass11-1418200112312002-1-12002-1-1Pass151920042282004-2-292004-3-1Fail17202001229日期不合法2001-2-30Fail20212001230日期不合法日期不合法Pass21-22 佣金问题用例设计序号输入预期输出实际输出结果覆盖等价类枪机枪托枪管销售额佣金销售额佣金1011输入枪管数不合法输入枪管数不合法pass(2) (8)(10)2101输入枪托数不合法输入枪托数不合法pass(4) (8)(10)3110输入枪机数不合法输入枪机数不合法pass(6) (8)(10)47111输入枪机数不合法输入枪机数不合法pass(3) (8)(10)51811输入枪托数不合法输入枪托数不合法pass(5) (8)(10)61191输入枪管数不合法输入枪管数不合法pass(7) (8)(10)75555005050050pass(1)(8)(10)815151515001751500175Pass(1)(8)(10)925252525003602500360pass(

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号