【软件测试之判定表法】 您所在的位置:网站首页 超市盘库存下载什么软件 【软件测试之判定表法】

【软件测试之判定表法】

2024-07-10 04:29| 来源: 网络整理| 查看: 265

【软件测试之判断表法】(蓝桥课学习笔记)

1、判定表法的概念

判定表又称“决策表”,是一种表格状的图形工具,适用于处理判断条件较多,各条件又相互组合、有多种决策方案的情况。由于决策表可以把复杂的逻辑关系和多种条件组合的情况表达的既具体又明确,因此在程序设计发展的初期,判定表就经常被当作编写程序的辅助工具。

判定表通常由 4 个部分组成:

条件桩(Condition Stub):指所有条件的名称,列出的条件的先后次序无关紧要。 动作桩(Action Stub):指所有可能采取的操作,顺序没有约束。 条件项(Condition Entry):条件桩中的条件所有可能的取值。 动作项(Action Entry):与条件项紧密相关,列出在条件项的各组取值情况下应该采取的动作。

任何一个条件组合的特定取值及其相应要执行的操作称为一条规则(Rules),在判定表中贯穿条件项和动作项的一列就是一条规则。显然,判定表中条件有多少组合取值,也就有多少条规则。根据软件规格说明,建立判定表的步骤如下:

第 1 步:分析需求,列出所有的条件桩和条件项;第 2 步:分析需求,列出所有的动作桩和动作项;第 3 步:根据规则,设计初始判定表;第 4 步:简化判定表,合并相似规则,设计测试用例。

运用判定表设计测试用例,可以将条件理解为输入,将动作理解为输出。

案例 案例 1:超市产品销售

超市中如果某产品的销售好并且库存低,则继续销售并增加该产品的进货;如果该产品销售好,但库存量不低,则继续销售;若该产品销售不好,但库存量低,则该产品下架;若该产品销售不好,且库存量不低,如果有空货架则继续销售,如果没有空货架,则该产品下架。

请使用判定表法设计测试用例。

【解析】

分析需求,列出所有的条件桩和条件项。如下表所示。

条件桩条件项C1:销售好?True(T)或 False(F)C2:库存低?True(T)或 False(F)C3:有空货架?True(T)或 False(F)

分析需求,列出所有的条件组合所产生的动作。

A1:增加进货A2:继续销售A3:产品下架

根据规则,设计初始判定表,如下表 所示。

对于本题有 3 个条件(销售、库存、有空货架),每个条件有 2 个取值(是或否),根据“组合”的原理,共有 23=8 种规则。

超市产品销售判定表

第 4 步:简化判定表

实际使用判定表时需要简化,简化是以合并相似规则为目标,若表中有 2 条以上规则具有相同的动作,并且在条件项之间存在极为相似的关系,则可以合并。

根据表中情形,第 1、2 条规则其动作项一致,条件项中的前 2 个条件取值一致,只有第 3 个条件取值不同,说明第 3 个条件无论取何值,都对相应的动作没有影响,这 2 条规则可以合并。合并后的 C3 示为--,说明在当前规则中该条件的取值与动作的取值无关,称为无关条件。根据此原则,第 3、4 条规则和第 5、6 条规则也可以合并,化简后的超市销售库存判定表如下表所示:

简化后的超市产品销售判定表

案例 2:房屋销售

有一个“计算房产基础中介费”的程序,规定中介费用政策如下:

如果房屋销售总价少于 10 万元,那么基础中介费将是销售总价的 2%;如果房屋销售总价大于 10 万元,那么基础中介费将是销售总价的 1.5%,外加 1000 元;如果销售额大于 100 万元,那么基础中介费将是房屋销售总价的 1%,外加 1500 元;

另外房屋销售单价和客户的性质对中介费也有影响:

若单价低于 1 万/m2,则外加基础中介费的 5%;若是老顾客,则减免外加基础中介费;若单价在 1 万/ m2 到 2 万/m2,则外加基础中介费的 2.5%;若是老顾客,则减免外加基础中介费;若单价在 2 万/m2 以上,则减免外加基础中介费;若是老顾客,则减去基础中介费的 5%。

【解析】:

分析各种输入情况,列出条件桩和条件项。如下表所示。

中介费的条件桩和条件项

分析程序的规格说明,并结合以上条件项,列出可能采取的操作。

A1:基础中介费为销售总价的 2%A2:基础中介费为(销售总价的 1.5%+1 000)元A3:基础中介费为(销售总价的 1%+1 500)元A4:外加基础中介费的 5%A5:外加基础中介费的 2.5%A6:减去基础中介费的 5%

根据以上分析的步骤,画出判定表,如下表所示。(根据合并规则,此处没有需要简化的项):

中介费判定表

根据以上判定表,设计测试用例。如下表 所示:

用例编号销售总价(元)销售单价(元)客户性质预期输出中介费-00150 0005 000新客户1 050中介费-00250 0005 000老客户1 000中介费-00350 00015 000新客户1 025中介费-00450 00015 000老客户1 000中介费-00550 00025 000新客户1 000中介费-00650 00025 000老客户950中介费-007500 0005 000新客户8 925中介费-008500 0005 000老客户8 500中介费-009500 00015 000新客户8 712.5中介费-010500 00015 000老客户8 500中介费-011500 00025 000新客户8 500中介费-012500 00025 000老客户8 075中介费-0131 500 0005 000新客户17 325中介费-0141 500 0005 000老客户16 500中介费-0151 500 00015 000新客户16 912.5中介费-0161 500 00015 000老客户16 500中介费-0171 500 00025 000新客户16 500中介费-0181 500 00025 000老客户15 675

2、判定表法小结

判定表法的基本思路是对多个条件的组合进行分析,从而设计用例来覆盖各种组合。适合使用判定表设计测试用例需要的条件如下:

规则说明以判定表的形式给出,或很容易转换成判定表。条件的排列顺序不影响所要执行的操作。规则的排列顺序不影响所要执行的操作。如果某一个规则要执行多个操作,这些操作的执行顺序也无关紧要。当某个规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。

判定表法最突出的优点是:能够将复杂的问题按照各种可能的情况全部列出来,简明并避免遗漏,而且对条件的组合顺序并无要求。因此,利用判定表法能够设计出完整的测试用例合集。

但判定法也有他的缺点,那就是没有考虑输入条件之间的相互制约关系(例如互斥关系)。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有