因果图法(主要用于条件和结果的关系分析)

1.因果图法是一-种适合于 描述对于多种输入条件组合的测试方法
2.根据输入条件的组合、约束关系和输出条件的因果关系,分析输入条件的各种组合情况,从而设计测试用例的方法
3.适用范围:它适合于检查程序输入条件涉及的各种组合情况。

原因放左边,结果放右边

分析步骤1:分析软件的所有操作/输入条件之间的关系和结果的制约特性

1)恒等

2)非:原因跟结果之间没有任何关系

3)或:多个条件任意一个条件成立,都会导致结果成立

4)与:多个条件必须同时满足,才会导致某个结果成立

因果图法
分析步骤二:分析原因之间的约束,结果之间的约束关系
1.其中互斥、包含、唯一、要求时对原因的约束,
**蔽是对结果的约束。**他们的含义如下
互斥:表示不同时为1,即a,b, c中至多只有一一个1(要么满足一个,要么都不满足)
包含:表示至少有一个1,即a, b, c中不同时为0(最少满足一个,可以满足多个,不能都不满足)
唯一:表示a,b, c中有且仅有一个1(最少满足一个,且只有一个)
要求:表示若a=1,则b必须为1。即不可能a=1且b=0

屏蔽:表示若a=1,则b必须为0

因果图实例

●将因果图中的每一个分支用表格列出来。
●而列表中的每一列都将是一条测试用例。

分析的过程中,将所有的条件的组合情况全都列出来,为每一种情况找出对应的结果
如果某一-个条件的组合没有结果的时候,就说明:需求说明或者软件程序设计是有缺陷和不
足。所以因果图法也可以用来检测需求中不完善的内容。

判定表法

什么是判定表法:是分析和表达多逻辑条件下执行不同操作的情
况的工具。

它由以下几个内容组成:
●条件桩(Condition Stub) :列出了问题得所有
条件。通常认为列出的条件的次序无关紧要。
●动作桩(Action Stub) :列出了问题规定可能采
取的操作。这些操作的排列顺序没有约束。
●条件项(Condition Entry) :列出针对它左列条
件的取值。在所有可能情况下的真假值。
●动作项(Action Entry) :列出在条件项的各种
取值情况下应该采取的动作。

建立判定表的步骤
第一步:确定规则的个数
假如有n个条件,每个条件有两个取值(0,1), 故有2^n种规则
第二步:列出所有的条件桩和动作桩
填入条件项
填入动作项,制定初始判定表
第三步:简化,合并相似规则或者相同动作

适合使用判定表设计测试用例的条件:
●规格说明以判定表的形式给出,或很容易转换成判定表
●条件的排列顺序不影响执行哪些操作
●规则的排列顺序不影响执行哪些操作
●当某一规则的条件已经满足, 并确定要执行的操作后,不必检验别的规则
●如果某一规则要执行多个操作,这些操作的执行顺序无关紧要


8.13

场景法

将软件运行的流程正确的分析和表述出来,一个完整的软件,基本流是固定的,因为基本流是业务最明确的表现(场景法设计测试用例的时候,内容更加复杂,流程多)

场景是不同的基本流和备选流的组合

场景法设计测试用例,就是将设计好的场景,使用标准的测试用例步骤描述出来。

​ 1) 分析软件的所有基本流(唯一 的),和其他备选流(很多的)。当某些软件不存在基本流
的时候,就不做分析和说明,使用其他业务流程代替说明。
​ 2)设计软件运行的各种场景:要包含基本流和备选流。

​ 3)依据不同的场景,设计不同的测试用例。步骤要明确。

​ ①用例设计中,是建立在其他用例设计方法和用例之上。。
​ ②场景法设计的用例,囊括了很多软件的功能←
​ ③场景法设计的用例,预期结果不唯–。因为在设计复杂的用例时,关键步骤都要设
计相应的预期结果。

​ ④场景法设计的测试用例,更容易发现软件的缺陷。因为结果正确,不一定过程也是
正确的。

一个ATM机为例

基本流程

插卡–输入密码–选择取款业务–选择(输入取款金额)–出款

原理:
●现在的软件几乎都是用事件触发来控制流程的。测试时,可
以生动地描绘出事件触发时的情景,有利于设计测试用例,
同时使测试用例更容易理解和执行。
●基本流:软件功能按照正确的事件流实现的一条正确流程。
通常一个业务仅存在一 个基本流, 且基本流仅有一个起点和
一个终点(正确的一个业务流程,没有其他任何错误情况和分支)
●备选流:除了基本流之外的各支流,包含多种不同的情况。(基本流程之外的其他流程和分支)

●场景列表:
场景1基本流
场景2基本流备选流1
场景3基本流备选流1备选流2
场景4基本流备选流3

●场景法设计用例的步骤
1)根据说明,描述出程序的基本流及各项备选流
2)根据基本流和各项备选流生成不同的场景
3)对每一个场景生 成相应的测试用例
4)对生成的所有测试用例重新复审,去掉多余的测试用例
5)测试用例确定后,对每一个测试用例确定测试数据值

场景法适用于解决业务流程清晰的系统或功能

正交实验法

1.理论依据最科学

2.最客观的一种方法

3.需要用到工具软件

定义:就是利用正交表进行实验的设计

实验的两个概念

​ 1)因素:对实验结果有影响的要素。例如:水汽温度风力地形会影响下雨

​ 2)水平:每个因素的不同取值状态称为水平

●正交实验法
概念:正交实验法就是利用排列整齐的表-正交表来
对试验进行整体设计、综合比较、统计分析,实现通
过少数的实验次数找到较好的生产条件,以达到最好
效果。

●这种试验设计法是从大量的试验点中挑选适量的具有
代表性的点,利用已经造好的表格-正交表来安排试
验并进行数据分析的方法。

正交实验法

1)确定好实验时的影响因素。

2) 确定好因素的取值状态。必须要使得每一个因素的取值数是相同的

3)选择正交表,一般根据已经存在的正交表,或者使用工具自动生成正交表

正交实验中是不可能预先知道实验结果的

用于进行测试用例设计的时候,仅仅只是利用其从大量实验中选取少量实验点(具有代表性的实验点)

正交表特性

​ 整齐可比、均衡分散,所以用来进行科学实验次数的筛选

正交表种类

​ ●各列水平数均相同的正交表
​ ●混合水平正交表

软件测试中的因果图法,判定表法场景法和正交表法相关推荐

  1. 软件测试 通用技术03 测试用例 黑盒测试用例设计方法 等价类划分法 边界值分析法 判定表法 场景法 功能图法 其他用例设计方法 用例设计方法综合选择

    文章目录 1 测试用例 1.1 测试用例的定义 1.2 测试用例模板 1.3 测试用例模板的内容 测试用例编号 测试项 依赖用例 测试步骤 测试数据 预期结果 测试结果 测试人 备注 2 测试用例编写 ...

  2. 黑盒测试:等价类划分、边界值、错误推测、因果图、判定表组成、场景法、正交试验设计

    黑盒测试方法 黑盒测试流程 等价类划分法 边界值分析法 错误推测法 因果图法 判定表组成法 场景法 正交试验设计 黑盒测试流程 测试计划:根据用户的需求报告中的功能需求.性能需求等功能规格指标制定相应 ...

  3. 测试用例--因果图、判定表法

    因果图.判定表法 一.应用场合 在界面中有多个控件,控件之间有组合或限制关系,不同的输入组合会对应不同的输出结果,如果想弄清楚不同的输入组合到底对应哪些输出结果,可以使用因果图/判定表法.(因果图/判 ...

  4. 因果图法+判定表+正交试验法自我学习(转)

    转自:http://www.51testing.com/html/19/422619-249780.html 因果图法 考虑到输入组合的情况 有3个部分: 因=输入条件 中间结点=输出值必须的前提条件 ...

  5. 软件测试-因果图与判定表

    因果图简介 等价类划分法和边界值法都是着重考虑到了输入条件,但是没有考虑到输入条件的组合与输入条件的相互制约关系.这样有可能忽视了很多错误 如果测试时考虑到了各种组合,测试所有组合将是一个天文数字,因 ...

  6. 黑盒测试-判定表驱动法与错误推测法-三角形问题

    决策表法(判定表驱动法) 是分析和表达多逻辑条件下执行不同操作的情况的工具,能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏. 条件桩:列出了问题的所有条件,通常认为列出的条件的次序无关 ...

  7. 测试用例设计(等价类、边界值、因果图、判定表、正交实验)

    测试设计与测试用例 测试设计是将概括的测试目标转化为具体的测试条件和测试用例的一系列活动. 测试分析和设计的主要任务 评审测试依据(需求,系统架构.设计和接口说明),根据依据,确定哪些部分需要测试 评 ...

  8. critic法计算_基于CRITIC法和变异系数法的导线网测量平差定权 2

    基于 CRITIC 法和变异系数法的导线网测量平差定权 杨腾飞,施昆,汪奇生 ( 昆明理工大学 国土资源工程学院 , 云南 昆明 650093) [摘 要] CRITIC 与变异系数定权都是一种客观的 ...

  9. 学习软件测试(三)测试用例、测试用例的设计方法(等价类划分法、边界值分析法、判定表法、因果图法、正交排列法、场景法、错误推测法)

    目录 测试用例 测试用例八大要素 测试用例的设计方法 等价类划分法 等价类操作步骤 边界值分析法 边界范围 边界值法的操作步骤 案例1 案例2 判定表法 为什么使用判定表法 判定表法的四个组成部分 判 ...

最新文章

  1. Android点击Button实现功能的几种方法
  2. php获取压缩文件列表,php获取所有文件并压缩
  3. 五个 .NET 性能小贴士
  4. 2011考研数学概率论基础复习必备知识点
  5. git拉取远程分支并创建本地分支和Git中从远程的分支获取最新的版本到本地
  6. Android开发笔记(一百七十六)借助FileProvider发送彩信
  7. QUnit系列 -- 5.QUnit源码分析之大致结构
  8. linux面试题:删除一个目录下的所有文件,但保留一个指定文件
  9. 车载娱乐系统 AppSupport
  10. python自动化面试提问_Python自动化测试笔试面试题精选
  11. matlab shapley函数,合作博弈shapley值讲解.ppt
  12. php workerman在线同步点歌台,支持在线聊天,与点歌
  13. LiveZilla 3.2.0.2的汉化包
  14. SSO单点登录方案大全
  15. 内核中的gfp_t类型
  16. Android中的Menu功能菜单-OptionsMenu[选项菜单]
  17. linux命令总结-ls
  18. 视频教程-【吴刚大讲堂】Adobe Illustoator (AI)CC2019进阶与应用标准视频教程-Illustrator
  19. windows安装spacemacs
  20. 【5G系列】NAS层PLMN选择(2)——选网过程

热门文章

  1. 驱动以SN码获取流程定制Barcode属性
  2. 我所知道的之二:出门
  3. 2018中国科幻产业报告
  4. 2021-08-03 Java学习基础第四天总结
  5. ArcBlock ⑨ 月报 | 稳步向前 创建未来
  6. v-model的使用
  7. C、c++ .h 头文件的作用
  8. tf.nn.moments( )函数的使用
  9. 004 无损分区4k对齐
  10. 【读论文-笔记】——2.沐神读Resnet