1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 软件测试-黑盒测试方法(一)---等价类划分 边界值 因果图 判定表

软件测试-黑盒测试方法(一)---等价类划分 边界值 因果图 判定表

时间:2019-04-30 20:35:07

相关推荐

软件测试-黑盒测试方法(一)---等价类划分 边界值 因果图 判定表

有关正交实验法、场景图、错误推测法,可参考文章:​​​​​​​​​​​​​​软件测试-黑盒测试方法(二)---正交实验法、场景图、错误推测法

一、等价类划分

使用等价类划分最主要的原因就是穷举测试不可能

定义:把所有可能输入的数据,分成若干部分(子集),在该子集合中,各个输入数据对于揭露程序中错误的作用都是等价的。

在子集合中,各个输入数据对于揭露程序中错误的作用都是等价的。因为无法保证完全等价,所以使用等价类测试后,不能完全保证软件没有缺陷。

应用场合:只要有数据输入的地方,都可以使用等价类划分法。使用最少的数据,尽可能达到最大的覆盖。

有效等价类:指对于程序的需求来说是合理的、有意义的输入数据构成的集合。程序接收到有效等价类数据,可以正确执行。

无效等价类:指对程序的需求是不合理的或无意义的输入数据所构成的集合。程序接收到无效等价类,应给出错误提示,或根本不让用户输入。

操作步骤:

(1)明确需求

(2)划分等价类,建立等价类表,确定有效和无效等价类

先找到有效等价类(需求中给出的输入条件)

按照条件相反,找到一部分无效等价类

再找特殊细节(中文、英文、小数、空格、空,具体情况具体再分析)

注意事项:

①找一些用户经常可能会使用的字符,那些不经常使用的可以不用添加到无效等价类中,比如数据类型:要考虑汉字、字母、特殊符号;但是不用考虑:日语、西班牙语.....

②注意正数和负数的计算方法不一样,最好将其划分为两个有效等价类,以便更能满足等价类划分法的假设条件

(3)根据等价类表设计测试用例

在保证其它控件输入正确的情况下,逐一对某一个控件进行测试。

二、边界值(对输入或输出的边界值进行测试)

作用:作为对等价类划分法的补充,其测试用例来自等价类的边界。大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。针对各种边界情况设计测试用例,可以查出更多的错误。

应用场合:只要有数据输入的地方,一般就可以使用边界值。

与等价类的区别:边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件。边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。

边界取值规则:选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。

操作步骤:

(1)明确需求,划分好有效等价类和无效等价类

(2)通常输入和输出等价类的边界,就是应着重测试的边界情况

(3)根据分析的数据设置测试用例

用例优化:

一条测试用例尽可能覆盖多的现在还有没有覆盖到的有效等价类,一条用例最多只能包含一条无效等价类。将所有的边界值,区分为有效等价类和无效等价类,区分好后,再按照上一句话进行用例的优化。

三、因果图(通过带箭头的线,将质量问题与原因之间的关系表示出来,是分析影响产品质量的诸因素之间关系的一种工具;根据输入条件的组合、约束关系与输出条件的因果关系,分析输入条件的各种组合情况,从而设计测试用例的方法。)

使用场合:有多个输入条件,输入条件之间可以进行组合,每种输入组合都有对应的一个输出结果。

因(输入条件)、果(输出条件)之间的关系:恒等、非、与、或

因与因之间的约束关系:互斥、包含、唯一、要求

果与果之间的约束关系:强制

操作步骤:

(1)分析需求,读懂需求

(2)找出所有的输入条件,并对所有条件进行统一编号

(3)找出所有的输出结果,并对输出结果进行统一编号

(4)明确所有输入条件之间的制约关系以及组合关系

哪些条件可以组合在一起,哪些不能

(5)根据输入条件的限制,绘制因果图

(6)找出什么样的输入条件组合会产生哪种输出结果,并根据组合关系绘制因果图

(7)根据因果图来设计测试用例

注意:因果图可以将种输入条件组合和对应的输出组合,单独绘制一张因果图,也可以将所有的组合绘制在一张图里面。可以添加中间状态,从而让因果图的可读性更强,如果输入控件太多,会导致因果图非常复杂,所以说这种情况下不建议使用因果图。

四、判定表(将所有的组合情况都会罗列出来,类似于穷举测试)

使用场景:和因果图的使用场合一样,一个功能,有多个输入条件,并且输入条件之间可以进行组合,每种输入条件的组合都有对应的输出结果。

相关概念:判定表也称决策表,能表示输入条件的组合,以及与每一输入组合对应的动作组合。判定表法主要侧重输入条件之间的逻辑关系。

条件桩:输入条件

条件项:输入条件的组合

动作桩:输出的结果

动作项:输出结果的组合

操作步骤:

(1)分析需求,列出条件桩和动作桩

(2)对所有条件项进行组合,把组合情况罗列出来

条件组合的数量2^n,n指输入条件的个数

(3)对所有输入组合进行检查,将不合理的输入组合删除

(4)明确每个组合对应的动作项,形成判定表

(5)根据判定表设计测试用例,每一列就是一条测试用例

简化(规则合并):

前提:同时满足①动作项完全一样②每个用例的条件只有一个不同

合并可能会存在漏测的风险:程序对于某个条件有不同的分支,若错误的将其合并,导致某条或某些路径没有被测试覆盖,造成漏测。(原因:条件类似且动作相同的路径,在程序内部可能有不同的分支,简化会丧失对某些程序分支的覆盖)。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。