判定表驱动法实例.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
判定表驱动法实例

1.???? 问题要求:”……50马力的机器、维修记录不全或已运行10年以上的机器,应给予优先的维修处理……” 。这里假定,“维修记录不全”和“优先维修处理”均已在别处有更严格的定义 。请建立判定表。 解答: 1)??? 确定规则的个数:这里有32*2*2=8种规则。 2)??? 列出所有的条件茬和动作桩: 3)??? 填入条件项。可从最后1 Y N Y N Y N Y N,第二行是: Y Y N N Y Y N N等等。 4)??? 填入动作桩和动作顶。这样便得到形如图的初始判定表。 1 2 3 4 5 6 7 8 条件 功率大于50 N Y Y Y N N N N 维修记录不全吗? Y Y N N Y Y N N 运行超过10 Y N Y N Y N Y N 动作 进行优先处理 x x X X X 作其他处理 X x x 初始判定表 5)??? 化简,合并相似规则后得到图。 1 2 3 4 5 条件 功率大于50 Y Y Y N N 维修记录不全吗? Y N N - - 运行超过10 - Y N Y N 动作 进行优先处理 x x X 作其他处理 x x 2.???? NextData M1={月份, 每月有30天} M2={月份, 每月有31天} M3={月份, 2月} 有29=512条规则 D1={日期,1~28} 12月末31日和其它31 D2={日期,29} 日月份的31日处理不同 D3={日期,30} 平年2月28日处理不同 D4={日期,31} 于2月27日 Y1 ={年:年是闰年} Y2 ={年:年不是闰年} 改进为: M1{月份: 每月有30天} M2={月份: 每月有31天, 12月除外} M4={月份:12月} M3={月份: 2月} D1={日期:1=日期=27} D2={日期:28} D3={日期:29} D4={日期:30} D5={日期:31} Y1 ={年:年是闰年} Y2 ={年:年不是闰年} 输入变量间存在大量逻辑关系的NextData 3.???? 用决策表测试法测试以下程序:该程序有三个输入变量monthday、year(month、day和year均为整数值,并且满足:1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。 例如,输入为200411月29日,则该程序的输出为2000年12月1日。 1)??? 分析各种输入情况,列出为输入变量monthday、year划分的有效等价类。 2)??? 分析程序规格说明,结合以上等价类划分的情况给出问题规定的可能采取的操作(即列出所有的动作桩)。 3)??? 根据(12),画出简化后的决策表。 案例分析如下: ?? 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} ?? year变量的有效等价类: Y1: {year是闰年} Y2: {year不是闰年} 4)??? 考虑各种有效的输入情况,程序中可能采取的操作有以下六种: a1: day+2 a2: day=2 a3: day=1 a4: month+1 a5: month=1 a6: year+1 4.???? 判定表在功能测试中的应用 1)??? 一些软件的功能需求可用判定表表达得非常清楚,在检验程序的功能时判定表也就成为一个不错的工具。如果一个软件的规格说明指出: ?? 当条件12满足,并且条件3和条件4不满足,或者当条件1、3和条件4满足时,要执行操作1。 ?? 在任一个条件都不满足时,要执行操作2 ?? 在条件14被满足时,要执行操作3。 根据规格说明得到如下判定表: 这里,判定表只给出了168种。事实上,除这8条以外的一些规则是指当不能满足指定的条件,执行3种操作时,要执行1个默许的操作。在没必要时,判定表通常可略去这些规则。但如果用判定表来设计测试用例,就必须列出这些默许规则(如下表)。 规则5 规则6 规则7 规则8 条件1 - N Y Y 条件2 - Y Y N 条件3 Y N N N 条件

文档评论(0)

638922bb + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档