黑盒测试用例设计技术概述

发表于:2020-9-10 09:45

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:熊猫呀    来源:博客园

  1.等价类划分法
  1.1测试中的疑问
  做加法器功能测试时,测试了1+1,1+2,1+3和1+4之后,还有必要测试I+5和1+6吗,能否放心地认为它们是正确的?
  1.2等价类划分
  1)把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据作为测试用例
  2)每类的代表性数据在测试中的作用等价于这一类中的其他值,如果某一类中的一个例子发现了错误,这一等价类中的其他例子也能发现同样的错误。反之,如果某-类中的一个例子没有发现错误,则这一类中的其他例子也不会查出错误。
  1.3基本步骤
  1)有效等价类
  2)无效等价类
  3)确定等价类的原则
  1.4确定测试用例
  1)为每一个等价类规划一个惟一的编号。
  2)设计一个新的测试用例,使其尽可能多覆盖尚未覆盖的有效等价类。重复这一步,最后使得所有有效等价类均被测试用例所覆盖。
  3)设计一个新的测试用例,使其只覆盖一个无效等价类。重复这一步使所有无效等价类均被覆盖。
  2.边界值分析法
  2.1边界值得选择原则
  1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。
  2)分析规格说明,找出其他可能的边界条件。
  3)如果输入条件规定了值的个数,则用最大个数、最小个数、比最小个数少1、比最大个数多1的数作为测试数据。
  4)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。
  5)如果程序中使用了个内部数据结构,则应当选择这个内部数据结构边界上的值作为测试用例。
  3.因果图法
  3.1因果图法的来源
  如考虑所输入条件之间的相互组合,会由于组合情况数目相当大,需要大量的测试用例。
  3.2应果图法的特点
  1)考虑输入条件间的组合关系。
  2)考虑输出条件对输入条件的信赖关系,即因果关系。
  3)能检查出功能说明中的某些不一致或遗漏。
  4)测试用例发现错误的效率高。
  5)因果图方法最终生产的就是判定表,它适合于检查程序输入条件和各种组合情况。
  3.3因果图法基本步骤
  根据功能说明书中规定的原因和结果之间的关系如下图:
  3.4识别出“原因”和“结果”,并加以编号
  案例:有一个饮料自动售货机(处理单价为5角钱)的控制处理软件,它的软件规格说明如下。若投入5角钱的硬币,按下“橙汁”或“啤酒”的按钮,则相应的饮料就送出来。若投入1元钱的硬币,同样也是按“橙汁”或“啤酒”的按钮,则自动售货机在送出相应饮料的同时退回5角钱的硬币。
  自动售货机因果图如下:
  3.5其中互斥、包含、唯一、要求时对原因的约束,屏蔽是对结果的约束。他们的含义如下:
  1)互斥:表示不同时为1,即a,b,c中至多只有一个1。
  2)包含:表示至少有一个1,即a,b,c中不同时为0。
  3)唯一:表示a,b,c中有且仅有一个1。
  4)要求:表示若a=1,则b必须为1.即不可能a=1且b=0。
  5)屏蔽:表示若a=1,则b必须为0。
  4.判定表驱动法
  1)心条件桩(ConditionStub):列出了问题得所有条件。通常认为列出的条件的次序无关紧要。
  2)心动作桩(ActionStub):列出了问题规定可能采取的操作。这些操作的排列顺序没有约束。
  3)心条件项(ConditionEntry):列出针对它左列条件的取值。在所有可能情况下的真假值。
  4)学动作项(ActionEntry):列出在条件项的各种取值情况下应该采取的动作。
  4.1建立判定表的步骤
  确定规则的个数
  假如有n个条件,每个条件有两个取值(0,1),故有2n种规则。
  1)列出所有的条件桩和动作桩填入条件项。
  2)填入动作项,制定初始判定表。
  3)简化,合并相似规则或者相同动作。
  4)规格说明以判定表的形式给出,或很容易转换成判定表。
  5)条件的排列顺序不影响执行哪些操作。
  6)规则的排列顺序不影响执行哪些操作。
  7)当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。
  4.2适合使用判定表设计测试用例的条件:
  1)规格说明以判定表的形式给出,或很容易转换成判定表。
  2)条件的排列顺序不影响执行哪些操作。
  3)规则的排列顺序不影响执行哪些操作。
  4)当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号