【tool】运用因果图法设计象棋中马行走路线的测试用例

因果图法设计用例

  需求规格:

  1、如果落点在棋盘外,则不移动棋子;

  2、如果落点与起点不构成日字型,则不移动棋子;

  3、如果落点处有自己方棋子,则不移动棋子;

  4、如果在落点方向的邻近交叉点有棋子(绊马腿),则不移动棋子;

  5、如果不属于1-4条,且落点处无棋子,则移动棋子;

  6、如果不属于1-4条,且落点处为对方棋子(非老将),则移动棋子并除去对方棋子;

  7、如果不属于1-4条,且落点处为对方老将,则移动棋子,并提示战胜对方,游戏结束。

  一.原因条件:

  1、 落点在棋盘上;

  2、 落点与起点构成日字;

  3、 落点处不为自己方棋子;

  4、 落点方向的邻近交叉点有棋子(绊马腿);

  5、 落点处无棋子;

  6、 落点处为对方棋子(非老将);

  7、 落点处为对方老将。

  二.结果动作:

  21.不移动棋子

  22.移动棋子(不吃子)

  23.移动棋子并除去对方棋子

  24.移动棋子除去对方老将,胜利。

  添加一个中间节点11,这样能够简化设计。然后画出因果图:

  通常的设计方法就是一个表的方法,我称为一表法。但是七个因子,表格就会非常的长,让人望而却步!2^7=128,那么长的表是一般人不能做到的,在 Excel里面都感觉版面不够,要是拿来考试怎么办?所以这里提供两表法。1、2、3、4只与 11及21有关,可以使用一个表先处理。然后11、5、6、7有可以作为一个表。

  1、列出表一

  合并表一:

  黄色背景的项说明了他们可以合并,合并后得到:

  2、列出表二

  首先去掉由于约束而无效的项,然后再进行合并,得到下面的表:

  3、把两个表合并成一个表

  由11因子的中介作用,合并的表二的每一个因子都对应一个表一的所有与之相同值的项,如表二中的列1就对应表一的1、9、13、16,如此对应,可生成下面的表格:

  由于上表中有一些相似的项,可以考虑他们是否可以合并,所有先在Excel中把相似的项复制在一起,得到下面的表:

  这样就可以生成测试用例了。其实真正的用例就在表中,只是还是要写成连菜鸟也要看得懂的文字而已。下面是用例:

  用例1:如果在棋盘上,构成日字,并且不是自己方棋子,落点方向的邻近交叉点没有棋子,落点处为对方老将,则移动棋子,并提示战胜对方,游戏结束。

  用例2:如果在棋盘上,构成日字,并且不是自己方棋子,落点方向的邻近交叉点没有棋子,且落点处为对方棋子(非老将),则移动棋子并除去对方棋子。

  用例3:如果在棋盘上,构成日字,并且不是自己方棋子,落点方向的邻近交叉点没有棋子,且落点处无棋子,则移动棋子。

  用例4:如果落点不在棋盘上,直接不移动棋子。

  用例5:如果落点在棋盘上,不构成日字,则不移动棋子。

  用例6:如果落点在棋盘上,构成日字,是自己方棋子,不移动棋子。

  用例7:如果落点在棋盘上,构成日字,不是自己方棋子,落点方向的邻近交叉点上有棋子,则不移动棋子。

时间: 2024-10-07 06:32:34

【tool】运用因果图法设计象棋中马行走路线的测试用例的相关文章

因果图法设计测试用例

一.使用因果图的好处 1 考虑了多个输入之间的相互组合.相互制约关系 2 能够帮助我们按一定步骤,高效率地选择测试用例,同时还能为我们指出,程序规格说明描述中存在着什么问题 二.利用因果图导出测试用例需要经过的一般步骤 1.分析程序规格说明的描述中,哪些是原因,哪些是结果. 2.分析程序规格说明的描述中语义的内容,并将其表示成连接各个原因与各个结果的因果图 3.在因果图上使用若干个特殊的符号标明特定的约束条件 4.把因果图转换成判定表 5.把判定表中每一列表示的情况写成测试用例三.因果图基本符号

第05讲、使用因果图法设计测试用例

一.应用场合 ? 在一个界面中,有多个控件,测试的时候要考虑控件的组合关系,不同的控件组合会产生不同的输出结果的组合,为了弄清什么样的输入组合会产生什么样的输出组合,使用因果图法. 二.因果图核心 1.因--原因,输入条件 2.果--结果,输出结果 使用图形的方式,分析软件输入和输出的对应关系 三.图形符号 1.基本图形 表示输入和输出的对应关系 ? (1)恒等 若a=1,b=1 若a=0,b=0 ? (2)非 若a=1,b=0 若a=0,b=1 ? (3)或 若a=1,或b=1,或c=1,则d

测试用例设计之因果图法

定义 因果图法就是从程序规格说明书的描述中找出因(输入条件)和果(输出或程序状态的改变),通过因果图转换为判定表,最后为判定表中的每一列设计一个测试用例. 首先我们来了解一下因果图的基本符号: 应用范围 更复杂的条件组合,2^n,n比较多的时候 使用步骤 1) 根据程序规格说明书描述的语义内容,分析并确定“因”和“果”: 2) 将“因”和“果”表示成 “因果图”: 3) 在因果图上使用若干个约束符号来标明约束条件: 4) 将得到的因果图转换成判定表: 5) 为判定表中每一列所表示的情况设计一个测

【tool】组合法设计用例中的全对偶测试法(All Pairs)

现在我们假设存在3个变量:V1.V2.V3,V1变量存在3个值:A.B.C;V2变量存在2个值:D.E;V3变量存在2个值:F.G.按照组合 测试法,可以组合出3*2*2 = 12种情况,也就是可以设计出12个测试用例.如果3个变量都存在5个不同的值的话,那就可以组合出5*5*5 = 125种情况,也就是需要设计出125个测试用例.测试专家James Bach使用全对偶测试法(All Pairs)将这125个测试用例压缩成25个测试用例,从理论上来覆盖变量组合的测试覆盖率,全对偶测试法有个基本的

软件测试用例之因果图法

简介 从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出或程序状态的改变),可以通过因果图转换为判定表. 因果图法即因果分析图,又叫特性要因图.石川图或鱼翅图,它是由日本东京大学教授石川馨提出的一种通过带箭头的线,将质量问题与原因之间的关系表示出来,是分析影响产品质量的诸因素之间关系的一种工具. 作用 因果图法是一种适合于描述对于多种输入条件组合的测试方法,根据输入条件的组合.约束关系和输出条件的因果关系,分析输入条件的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条

【tool】正交法设计测试用例

用正交实验法设计测试用例    软件测试 正交实验法的由来 一.正交表的由来 拉丁方名称的由来 古希腊是一个多民族的国家,国王在检阅臣民时要求每个方队中每行有一个民族代表,每列也要有一个民族的代表. 数学家在设计方阵时,以每一个拉丁字母表示一个民族,所以设计的方阵称为拉丁方. 什么是n阶拉丁方? 用n个不同的拉丁字母排成一个n阶方阵(n<26 ),如果每行的n个字母均不相同,每列的n个字母均不相同,则称这种方阵为n*n拉丁方或n阶拉丁方.每个字母在任一行.任一列中只出现一次. 什么是正交拉丁方?

软件测试技术(三)——使用因果图法进行的UI测试

目标程序 较上次增加两个相同的输入框 使用方法介绍 因果图法 在Introduction to Software Testing by Paul一书中,将软件测试的覆盖标准划分为四类,logical expressions,syntactic descriptions,graphs,input domain characterizations,就我所学的内容来看,等价类划分属于input domain characterizations,控制流与数据流测试属于graphs,而因果图法属于logi

011-黑盒测试的测试用例常见设计方法都有哪些?请分别以具体的例子来说明这些方法在测试用例设计工作中的应用

黑盒测试的测试用例常见设计方法都有哪些?请分别以具体的例子来说明这些方法在测试用例设计工作中的应用. 1)等价类划分 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:有效等价类和无效等价类. 2)边界值分析法 边界值分析方法是

《Invert》开发日志01:核心玩法设计

前面提过,这个游戏的核心玩法基于我做的第一个Unity游戏,名字就叫<Invert>,现在在应用宝上面还能搜到.不过那个游戏也不是我原创的,它的玩法设计来自github上的一个开源项目(https://github.com/gorried/inverter),那时候我正在上培训班,它本来是我的一个课下练习.当时主要是为了熟悉游戏从制作到发布的流程,所以几乎完全模仿了原项目的设计,连方块的配色都没改(因为我觉得那配色挺好看的,还特意用Photoshop取了人家的色值). 但是现在回过头来看,这种