• 6.0、软件测试——判定表法


    6.0、软件测试——判定表法

    判定表定义及组成部分:

    定义:是一种以表格形式表达多条件逻辑判断的工具

    使用场景:

            1. 有多个输入条件,多个输出结果,输入条件之间有组合关系,输入条件和输出结果之间有依赖(制约)关系;
            2. 判定表一般适用于条件组合数量较少的情况(比如4条件以下);

            3. 如果条件超过4个,就不适合覆盖所有条件,应采用(正交法)来解决;

    组成:

            > 条件桩:列出问题中的所有条件,列出条件的次序无关紧要;
            > 动作桩:列出问题中的可能采取的操作,操作的排列顺序没有约束;
            > 条件项:列出条件对应的取值,所有可能情况下的真假值;
            > 动作项:列出条件项、各种取值情况下应该采取的动作结果;

            条件之间必须要有相互依赖的关系才能用判定表法,例如 学号和姓名没有依赖关系所以不能用判定表法

    下面来看一个案例:

    案例:“验证若用户欠费或者关机,则不允许主被叫”功能的测试;
    说明:

            等价类边界值分析法主要关注单个输入类条件的测试;
            并未考虑输入条件之间的各种组合、输入条件与输出结果之间有相互制约关系的测试;

    判定表法设计用例步骤

            1. 明确需求
            2.画出判定表:
                    (1)  列出条件桩和动作桩
                    (2)  填写条件项、对条件进行全组合
                    (3)  根据条件项的组合确定动作项
                    (4)  简化、合并相似规则(有相同的动作)
            3.  根据规则编写测试用例

    条件是否欠费【条件桩】【条件项】【条件项】【条件项】【条件项】
    是否关机【条件桩】【条件项】【条件项】【条件项】【条件项】
    操作是否允许主被叫【动作桩】【动作项】【动作项】【动作项】【动作项】

    规则:
            >
    判定表中贯穿条件项和动作项的一列就是一条规则;
            > 假设有 n 个条件,每个条件的取值有两个 ( 0 , 1 ),全组合有 2 的 n 次方规则;


    接下来我们再来看一个较为复杂的用例:

    (1) 如果金额大于500元,又未过期,则发出批准单和提货单;

    (2) 如果金额大于500元,但过期了,责任不发批准单和提货单;

    (3) 如果金额小于等于500元,则不论是否过期都发出批准单和提货单;
    (4) 在过期的情况下不论金额大小还需要发出通知单;

    第一步:编写判定表:

     

     第二步:编写测试用例:

    练习3 -> 文件修改规则:

    (1) 输入的第一列字符必须是A或B;

    (2) 第二列字符必须是一个数字;

    (3) 如果第一列字符不正确,则给出信息 L;

    (4) 如果第二列字符不正确,则给出信息 M;

    (5) 如果两列字符输入正确,则修改文件成功;

    第一步:编写判定表:

     第二步:编写测试用例:

  • 相关阅读:
    JVM堆内存释放不及时问题
    【秋招面经】菜鸟前端题目总结
    【MQTT】关于部署含有MQTT协议的程序pod到K8S中出现的问题
    C++DAY10 结构体·结构体指针
    git 中使用git clean删除未跟踪Untracked的文件
    SpringCloud学习笔记 - 分布式配置中心 - config
    信息学奥赛一本通:1408:素数回文数的个数
    Redis6 八:Redis的发布和订阅
    react redux(一)
    Unity 制作登录功能02-创建和链接数据库(SQlite)
  • 原文地址:https://blog.csdn.net/m0_52433668/article/details/126839108