第三章 习题及答案_第1页
第三章 习题及答案_第2页
第三章 习题及答案_第3页
第三章 习题及答案_第4页
第三章 习题及答案_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三章黑盒测试方法课后习题及答案1.黑盒测试中,测试人员和程序员应该相互独立。解释其合理性。答:黑盒测试是一种常见且常用的软件测试方法,它将被测软件看成是一个无法打开的黑盒,主要根据功能需求设计测试用例来完成软件的测试。将测试人员与程序员相互独立可以以避免作者的偏见,并且通常更有效地发现缺陷和失败。2.若测试机器学习程序,请设计出一些蜕变关系。答:蜕变关系(

Metamorphic

Relation,

MR)表示一组与模型算法中多对输入和输出相关的属性,即在多次执行目标程序时,输入与输出之间期望遵循的关系。机器学习程序测试蜕变关系如下:蜕变关系名称输入的变化相应的输出改变Permutative随机改变元素的序列维持不变Additive加上一个正常数增加或维持不变Multiplicative乘一个正常数增加或维持不变Invertive取相反数减少或维持不变Inclusive增加一个新元素增加或维持不变Exclusive删除一个元素减少或维持不变3.如何识别等价类?运用示例给出解释。答:识别等价类的六大原则:(1)如果一个输入条件规定了输入值的范围,那么可以得到3个等价类:一个有效等价类和两个无效等价类。示例:规定输入值的范围是1~99,如图所示,那么可以得到3个等价类:一个合法等价类{1,…,99};两个非法等价类{x|x<1}和{x|x>99}。图:输入值范围(2)如果输入条件规定了一个输入值集合,并且集合中的每个元素处理起来都不同,那么为集合中的每个元素生成一个有效等价类,为集合之外的所有元素生成一个无效等价类。示例:如果从具有N个元素的集合中选择输入,那么得到N+1个等价类。为每个元素生成一个有效等价类{M1},…,{MN};生成一个包含集合之外所有元素的无效等价类{x|x∉{M1,…,MN}}。(3)如果处理每个有效输入的方式都不相同,那么为每个有效输入生成一个有效等价类。示例:如果在一个菜单中选择菜单项作为输入,那么应该为每个菜单项定义一个等价类。(4)如果输入条件规定了有效输入的数量(假定为N),那么为正确的输入数量定义一个有效等价类,同时定义两个无效等价类。(5)如果输入条件规定了必须满足的情形,那么生成两个等价类:一个为有效等价类;另一个为无效等价类。示例:输入的第一个字符必须是一个数字,那么得到两个等价类—一个为有效等价类{s|s的第一个字符是数字};另一个为无效等价类{s|s的第一个字符不是数字}。如果一个等价类中的元素被程序处理的方式不同,那么就把该等价类分割为更小的等价类。一种直观的识别方式是简单值、普通值、极端值和典型值等。4.对NextDate示例,运用等价类划分法给出测试用例。NextDate函数的一般等价类测试用例测试用例输入期望输出daymonthyearTestCase125420172017年4月26日NextDate函数的弱健壮等价类测试用例测试用例输入期望输出daymonthyearTestCase125420172017年4月26日TestCase22502017month不在1~12中TestCase325132017month不在1~12中TestCase4042017day不在1~31中TestCase53242017day不在1~31中TestCase62541911year不在1912~2050中TestCase72542051year不在1912~2050中NextDate函数的强健壮等价类测试用例测试用例输入期望输出daymonthyearTestCase125−12017month不在1~12中TestCase2−2542017day不在1~31中TestCase32541900year不在1912~2050中TestCase4−1−42017变量day、month无效,变量year有效TestCase5−141900变量day、year无效,变量month有效TestCase625−41911变量month、year无效,变量day有效TestCase7−25−42051变量day、month、year无效NextDate函数的改进等价类划分测试用例测试用例输入期望输出daymonthyearTestCase130620172017年7月1日TestCase231820172017年9月1日TestCase327220172017年2月28日TestCase428220172017年3月1日TestCase529220162016年3月1日TestCase6311220172018年1月1日TestCase73192017不可能的输入日期TestCase82922017不可能的输入日期TestCase93022017不可能的输入日期TestCase109152017变量month无效TestCase113592017变量day无效TestCase12992100变量year无效5.对于三角形问题,给出弱健壮等价类测试用例。答:弱健壮等价类测试对于有效输入,使用每个有效等价类的一个值;对于无效输入,测试用例只使用一个值,其余值都是有效的。它是基于单软件缺陷假设,考虑无效等价类,选取的测试用例要覆盖每个有效等价类和无效等价类,但是不能同时覆盖两个无效等价类。测试用例输入a,b,c期望输出Test13,4,5一般三角形Test21.5,4,5提示“请输入1~100的整数”Test33.5,2.5,5提示“请输入1~100的整数”Test42.5,4.5,5.5提示“请输入1~100的整数”Test53提示“请输入3条边长”Test64,5提示“请输入3条边长”Test72,3,4,5提示“请输入3条边长”Test83,0,8提示“边长不能为0”Test90,6,0提示“边长不能为0”Test100,0,0提示“边长不能为0”Test11−3,4,6提示“边长不能为负”Test122,−7,−5提示“边长不能为负”Test13−3,−4,−5提示“边长不能为负”Test14101,4,5提示“请输入1~100的整数”Test153,101,102提示“请输入1~100的整数”Test16101,104,105提示“请输入1~100的整数”6.什么是边界值分析法?程序的边界是指什么?答:边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。程序的边界指的就是用户定义的范围值。7.从测试用例的数量说明边界值分析法与等价类划分法之间有什么不同。答:等价类划分法:将测试过程中的输入、输出、操作等相似内容分组,从每组中挑选具有代表性的内容作为测试用例,划分份有效等价类和无效等价类;边界值分析法:确认输入、输出的边界,然后取刚好等于、大于、小于边界的参数作为测试用例测试;8.决策表通常由哪几个部分组成?答:条件桩,条件项,动作桩,动作项9给出NextDate函数的决策表测试用例设计。(1)列出所有的动作桩和条件桩动作桩:A1:不可能A2:day+1A3:day=1A4:month+1A5:month=1A6:year+1条件桩:M1={month:month有30天}M2={month:month有31天,12月除外}M3={month:month是12月}M4={month:month是2月}D1={day:1≤dayD2={day:day=28}D3={day:day=29}D4={day:day=30}D5={day:day=31}Y1={year:year是闰年}Y2={year:year不是闰年}(2)根据条件桩和动作桩,画出决策表规则1234567891011条件月M1M1M1M1M1M2M2M2M2M2M3日D1D2D3D4D5D1D2D3D4D5D1年-----------动作A1√A2√√√√√√√√A3√√A4√√A5A6规则1213141516171819202122条件月M3M3M3M3M4M4M4M4M4M4M4日D2D3D4D5D1D2D2D3D3D4D5年-----Y1Y2Y1Y2--动作A1√√√A2√√√√√A3√√√A4√√A5√A6√(3)根据(1)和(2)化简决策表规则1,2,3456,7,8,91011,12,13,1415161718192021,22条件月M1M1M1M2M2M3M3M4M4M4M4M4M4日D1,D2,D3D4D5D1,D2,D3,D4D5D1,D2,D3,D4D5D1D2D2D3D3D4,D5年--------Y1Y2Y1Y2-动作A1√√√A2√√√√√A3√√√√√A4√√√√A5√A6√(4)根据决策表设计测试用例,得到测试用例表测试用例monthdayyear预期输出TestCase1~361520222022年6月16日TestCase463020222022年7月1日TestCase56312022不可能的输入日期TestCase6~911520222022年1月16日TestCase1013120222022年2月1日TestCase11~14121520222022年12月16日TestCase15123120222023年1月1日TestCase1621520222022年2月16日TestCase1722820002000年2月29日TestCase1822820222022年3月1日TestCase1922920002000年3月1日TestCase202292022不可能的输入日期TestCase21,222302022不可能的输入日期10.某软件的一个模块需求规格说明书中描述:“……对于功率大于50马力(约37千瓦)的机器或者维修记录不全的或已经运行10年以上的机器应予以优先维修处理……”这里假定“维修记录不全”和“优先维修处理”有严格的定义。请建立该需求的决策表,并绘制出化简(合并规则)后的决策表。答:1、列出条件桩和动作桩条件桩:①功率大于50马力吗?②维修记录不全吗?③运行时间超过10年吗?动作桩:①优先维修②正常维修2、画出初始决策表序号12345678条件功率大于50马力吗?YYYYNNNN维修记录不全吗?YYNNYYNN运行时间超过10年吗?YNYNYNYN动作优先维修√√√√√√√正常维修√3、得到化简后的决策表序号1578条件功率大于50马力吗?YNNN维修记录不全吗?-YNN运行时间超过10年吗?--YN动作优先维修√√√正常维修√11.某商场举行一次假日商品促销活动。在活动期间,对持有商场会员卡的顾客,实行8.5折优惠,消费满1000元实行7折优惠;对其他顾客,消费满1000元实行9折优惠,并免费办理会员卡。请给出相应的判定表及测试用例集。判定表:序号1234条件持会员卡YYNN消费满1000元NYNY动作0折扣√7折扣√8.5折扣√9折扣√办会员卡√测试用例集:输入数据输出结果持会员卡,消费小于1000实行8.5折优惠持会员卡,消费大于等于1000实行7折优惠未持会员卡,消费小于1000无优惠未持会员卡,消费大于等于1000实行9折优惠,并免费办理会员卡12.有一个饮料自动售货机的控制处理软件。若投入5角钱的硬币,按下橙汁或啤酒的按钮,则相应的饮料就送出来。若投入1元的硬币,同样也是按下橙汁或啤酒的按钮,则相应的饮料

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论