• 4
  • 4
分享

  一、判定表

  1.使用场景:

  当多个输入条件之间存在逻辑关系,需要组合测试时,使用判定表法进行分析

  2.相关概念

  (1)条件桩:输入条件,如工资薪制,错误程度

  (2)条件项:输入条件的取值,如年薪制、月薪制

  (3)动作桩:输出结果项,如扣款比例,扣款金额,实发工资

  (4)动作项:输出每个项的具体值

  3.使用步骤

  (1)需求分析,得到条件桩和条件项,以及动作桩

  (2)确定组合数量(条件项乘积)

  (3)得到判定表

  (4)导出测试用例,原则,一列是一条测试用例

  案例1:

  工资发放系统

  条件桩:工资薪制

  条件项:年薪制,月薪制,季薪制

  案例2:

  有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。

  其规格说明如下:

  若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。

  若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;

  若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。

  条件桩:

  ·零钱:有零钱,无零钱

  ·投币:不投,投5毛,投1元,投1.5

  ·按饮料:不按,按橙汁,按啤酒,按橙汁+啤酒

  二、因果图

  1.使用场景:

  与判定表方法使用场景相同

  2.使用步骤

  (1)需求分析,得到原因(条件桩,条件项)和结果(动作桩)

  (2)画出因果图

  (3)根据因果图得到判定表

  (4)根据判定表,导出测试用例

  3.原因与结果之间的关系

  (1)恒等:如果天晴,则户外活动,天晴与户外活动属于恒等关系

  (2)非:如果下雨,则不户外活动,下雨与户外活动属于非关系

  (3)或:如果下雨,或下雪,或下冰雹,则室内活动,下雨、下雪、下冰雹与室内活动属于或关系

  (4)与:如果有时间且有钱,则去旅游有时间、有钱与旅游属于与关系

6.png

  4.条件项之间的约束(输入状态之间的约束)

  (1)E约束(异):a和b之间至多有一个为1,即a和b不能同时为1

  (2)I约束(或):a、b和c中至少有一个必须是1,即a、b和c不能同时为0。

  (3)O约束(唯一):a和b必须有一个,且仅有1个为1

  (4)R约束(要求):a是1时,b必须是1,即不可能a是1时b是0。

  三、正交试验

  1.使用场景:

  当多个输入条件需要组合测试,且组合数量很多时(超过三四十)考虑使用正交试验,减少组合数量,得到最优组合。

  2.相关概念

  (1)因子数(相当于条件桩):输入条件的个数

  (2)水平数/状态数(相当于条件项):每个因子的取值个数

  3.使用步骤

  (1)需求分析,确定因子数和状态数(取最大值)

  (2)选择合适的正交表,选取的原则如下:

     a)正交表的列数大于等于因子数

     b)正交表的每列的状态大于等于确定的状态数,若有多张正交表符合条件,则选择行数最少的正交表

  (3)复制选中的正交表到excel文件,进行修改调整

     a)根据实际因子数,删除多余的列

     b)根据每列的实际状态数,删除多余的状态(补充多余的状态)

     c)使用现有的状态替补空白单元格(尽量使每列中每一种状态出现的次数相同)

  (4)将修改后的正交表中的代号替换为具有实际含义的因子名和状态名称

  (5)导出测试用例,原则:一行即为一条用例。

  四、流程分析法(场景法)业务流程法

  1.使用场景:

  任何一个功能操作,均需要考虑使用流程分析法,进行测试点分析,尤其是对于业务流程复杂的系统

  2.考虑思路

  (1)谁可以进入被测页面?(用户权限问题)

  (2)在满足什么前置条件下可进入被测页面(前置条件问题)

  (3)通过什么路径可进入被测页面(路径方式问题)

  五、测试用例设计方法小结:

  (1)用流程分析法,对被测页面进行分析,考虑谁可以操作?在什么前置条件可以操作?可以通过什么路径方式去操作?分析用户的各种场景。

  (2)针对被测页面中的元素进行测试点分析,若元素之间不需要组合测试,则使用等价类划分、边界值分析法、经验法、错误猜测法分析每个元素的有效和无效测试点。

  (3)若元素之间需要组合测试,则使用判定表法进行分析,若组合数量大时,则使用正交试验法,减少组合数量,得到最优组合。



作者:HEREISDAVID   

来源:https://www.cnblogs.com/hereisdavid/p/13411642.html


  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   背景技术:  随着IT行业的繁荣,当前的浏览器软件形势极为复杂。有各种类型的浏览器和许多版本,这导致在测试网页时需要进行复杂的兼容性测试。目前正在进行兼容性, 两种测试方法是:  1)一台PC安装了多种型号的浏览器进行测试;  2)多台PC均安装了用于测试的浏览器。  由于自动网页测试将垄断整个过程,并且同一台PC上安装的多个浏览器容易发生环境冲突,因此上述兼容性测试方法1)并不理想,但上述测试方法2)不理想将消耗大量的硬件资源。  技术实现要素:  本发明克服了现有技术的不足,提供了一种浏览器兼容性测试系统和方法,用于解决兼容性测试过程中环境隔离和资源浪费的问题。  考虑到现有技术的上述...
            0 0 959
            分享
          •   想从事软件测试行业,但又怕踩坑。新人测试入门是很简单,但是要想立足在测试行业,单靠入门是远远不够的。作为一名在测试行业踩过无数的坑的测试媛,给你支两招。  第一招:用学历打开求职大门  学历一直是找工作的敲门砖,所说软件行业对学历的要求相对较低,但是一些大厂的最低标准都是一本。有一个好学历你就比别人多了一个工作的机会。  我有个同事求职去美团,技术面都过了,却败在了hr这边,原因就是学历和专业的问题。所以那些还在学校的小伙伴们,学习真的很重要啊!以及一些专科的同学抓紧时间去考个成人本科!  第二招:抓住去大公司的尾巴   正准备从事软件测试的朋友们,是不是有了offer不知道该怎...
            9 9 3161
            分享
          •   今天一看日历,才突然意识到自己毕业已经四年了。四年时间里一直在测试行业摸爬滚打,现在是时候记录一下了。  下面我来分享下我这4年软件测试经验及成长历程,或许能帮助你解决很多工作中的迷惑。  我是如何开始做测试的?  2013年开始上大学,一个不算好的小二本,专业也是被调剂的-信息与计算科学,看起来高大上的专业,实际到真正学习的时候才发现,学习的东西泛而不精,数学知识与计算机知识掺杂,导致大学学了四年后,对什么都一知半解,更找不到毕业后的方向和职业规划。  一个偶然的机会,接触到了嵌入式,听说发展前景很好。由于当时对就业的迷茫,终于没能抵挡住诱惑,就这样,大四那年基本都是在嵌入式学习中度过的...
            0 0 842
            分享
          •   kubernetes 在容器编排领域已经形成统治地位,不管是开发、运维和测试,掌握 kubernetes 都变得非常有必要。这篇文章通过 minikube 搭建一个简单的 kubernetes 运行环境。  安装虚拟机  主流的操作系统都支持 kubernetes,但是 windows 操作系统在安装 kubernetes 时,不能通过本地网络直接访问,必须要使用另一台机器,额外装一个虚拟机用起来还是会更方便一些。  装虚拟机可能对电脑的配置要求会更高一些,kubernetes 本身要求电脑的配置至少要 2G 以上内存,2 核以上,虚拟机还需要占用一定的资源,可能会造成电脑满负荷运转。  ...
            0 0 1378
            分享
          • 什么是接口测试?接口测试是测试系统组件间接口的一种测试。接口测试的重点是检查数据的交换,传递的正确性,以及接口间逻辑依赖关系。提交接口测试的重要意义:实现开发期并行测试,减少页面层测试的深度,缩短整个项目的测试周期。我们测试的接口属于哪一类?服务器接口(基于HTTP协议的接口)大多数人常说的接口测试,通常是B/S架构,由客户端(浏览器)调用,或模拟客户端(浏览器)调用服务器提供的请求接口,由服务器完成处理并返回一个应答的过程。例如:Webservice接口,http接口,jms接口,hessian接口。HTTP接口传递数据最常用的方式:Get方式是从服务器上获取数据;在做数据查询时,建议用Ge...
            0 0 1501
            分享
      • 51testing软件测试圈微信