一、等价类测试用例设计方法
定义: 等价类是把所有可能的输?数据,即程序的输?域划分成若?部分(?集),然后从每?个?集中选取少数具有代表性的数据作为测试?例。
逻辑学的角度而言:输入----》中间处理----〉输出
等价类:就是针对被测对象输入的数据,可以分为有效数据与无效数据
被测对象可以分为两个维度的测试:
1、正常流程 需要测试的数据可以理解为有效数据。
2、异常流程中需要测试的数据可以理解为无效数据。
saas化:微服务架构Software AS A Service
paas化:平台即服务Platform As A Service
二、边界值分析方法
定义:边界值分析法就是对输?或输出的边界值进?测试的?种?盒测试?法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试?例来?等价类的边界。
例如发红包:要发出200元的红包,需要测0元、1元、199元、200元、201元
边界值分析方法案例优化:
结论:7个优化为5个点
上点:必选(不考虑开闭区间)
内点:必选(建议选择中间范围)
离点:开内闭外(考虑开闭区间,开区间选择内部离点,闭区间选择外部离点)
示例:6<=qq<=10 →[6,10]→开内闭外→5、11进行测试(7、9)去除。
三、因果图方法
定义:是一种利用图解法分析输?的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。
因果图:简单的理解就是被测对象有多个输入条件,根据排列组合的数学概念,把多个条件结合逻辑的关系(并且,或者)进行组合,得到一个输出的结果信息。
==:等于
! = :不等于
or :或者
and:和
非:
等于关系:
或者关系:满足其中一个条件就可以。
并且关系:同时满足两个或以上条件。
四、正交实验分解法:
在利用因果图来设计测试用例时,输入条件的原因与输出结果之间的因果关系,有时难以从软件需求规格说明中获取。通常因果关系极为庞大,以至于依据此因果图而得到的测试用例数量多得惊人,给软件测试带来沉重的负担。为了高效且合理地减少测试的工时与费用,可以利用正交实验设计方法来进行测试用例的设计。
因果图结合排列组合设计出来的测试用例的个数是无限扩张的,但是测试资源是有限的,所以在这个情况下,只需要选择有代表性的数据进行测试,这就是正交实验分解法解决了问题。
五、错误推测法:
错误推测方法定义:基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法。
举例:
1、针对电商类的产品,我们打开首页后,只加载能够看见的资源信息,随着往下滑动的过程,资源都会加载出来,这个过程可能会出现页面卡住或者卡死
2、针对翻页的组件:只展示当前页面的数据,后面的数据是随着翻页的过程中逐步加载的,那么可能就会出现页面的卡住或者卡死
3、上传文件组件:上传1G的文件,那么可能就会导致上传的文件缺失,或者文件上传成功后,文件内容是乱码,还有可能是出现内存泄漏(OutOfMemory --->OOM)
针对底层服务:1.超时 2.堵塞 3.假死
实例:
六、判定表驱动分析方法
1.定义:判定表是分析和表达多逻辑条件下执?不同操作的情况的?具。
2.优点:能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此,利?判定表能够设计出完整的测试?例集合。
3.在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作。判定表很适合于处理这类问题。
4.判定表的四个组成部分
1)条件桩(Condition Stub):列出了问题的所有条件。通常认为列出的条件的次序?关紧要。
2)动作桩(Action Stub):列出了问题规定可能采取的操作。这些操作的排列顺序没有约束。
3)条件项(Condition Entry):列出针对它左列条件的取值。在所有可能情况下的真假值。
4)动作项(Action Entry):列出在条件项的各种取值情况下应该采取的动作。
判定表驱动分析方法:划分测试的范围和边界,列表需要测试各种不同条件
因果图:在划分测试范围的基础上,列出各个不同条件的排列组合的测试
正交实验分解法:在因果图的基础上,选择有代表的数据进行测试
实例:
1.问题要求:”……对功率大于50马力的机器、维修记录不全或已运行10年以上的机器,应给予优先的维修处理……” 。这里假定,“维修记录不全”和“优先维修处理”均已在别处有更严格的定义 。请建立判定表。
解答:
①确定规则的个数:这里有3个条件,每个条件有两个取值,故应有2*2*2=8种规则。
②列出所有的条件茬和动作桩:
③填入条件项。可从最后1行条件项开始,逐行向上填满。如第三行是: Y N Y N Y N Y N,第二行是: Y Y N N Y Y N N等等。
④填入动作桩和动作顶。这样便得到形如图的初始判定表。
互联网常用的项目工具:
·jira
· TAPD
七、场景设计方法:
这种在软件设计方面的思想也可以引用到软件测试中,可以比较主动地描绘出事件触发时的情景,有利于测试设计者设计测试用例,同时使测试用例更容易理解和执行。
产品测试快速建立全局思维:
1.使用场景设计方法快速梳理出被测产品的核心业务逻辑
2.使用判定表驱动分析方法列出流程中可能的逻辑判断条件,使用功能图列出产品的输入输出,完善每个不同条件下的业务场景
比如拿电商产品的商品上架为例:
1.上架审核通过,那么就可以搜索购买
2.审核拒绝,商品搜索不到
3.库存为0,商品未下架
功能图分析方法
一个程序的功能说明通常由动态说明与静态说明所组成。动态说明描述了输入数据的顺序或转移的次序。而静态说明则描述了输入条件与输出条件之间的对应关系。对于较为复杂的程序,鉴于存在大量的组合情形,所以,仅靠静态说明组成的规格说明对于测试而言往往是不足的。必须要用动态说明来对功能说明进行补充。功能图方法是以功能图 FD 的形式来规范化地表示程序的功能说明,并机械性地生成功能图的测试用例,测试用例则是由测试中历经的一系列状态以及在每个状态中必须依托输入/输出数据满足的一对条件所组成。功能图方法实际上是一种黑盒白盒混合的用例设计方法。
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理