黑盒测试用例设计方法主要有:等价类划分法、边界值分析法、判定表法、因果图法、正交因子法、状态迁移法、流程分析法、输入域/输出域分析法、错误猜测法等
常用的有等价类、边界值、正交因子、输入域/输出域分析法,下面介绍这几种方法。
等价类划分法:等价类划分两种情况有效等价类和无效等价类。简单来说有效等价类就是符合需求的取值,无效等价类就是不符合需求的取值。例如某保险对投保人年龄要求是18-65周岁,这时有效等价类为18-65之间的年龄,无效等价类为小于18、大于65的年龄。
边界值分析法:边界值就是如果规定了某个范围,范围的各边界点就是测试点。例如上述的对投保人的年龄要求18-65,如果这是一个闭区间,17、18、30、40、65、66都是这个范围的边界点,其中18、65叫做上点,30、40叫做内点,17、66叫做离点。不难看出边界值是等价类的一个补充,所以两者经常一起运行设计用例。
正交因子法:简单来说正交因子就是一种用来测试组合的方法。例如某保险对投保人要求18-65周岁,投被保人关系为父母或子女,其中投保人年龄、投被保关系叫做因子,投保人年龄18、65和投被保关系父母、子女叫做各因子的状态,在这里有两个因子,每个因子有两个状态,两两组合就产生4条用例。由于当因子和状态较多时,组合会成指数增加需要借助工具生成正交表,再计算各因子、状态的权值,去掉权值较小也就是重要性较小的因子或状态,最后得出测试用例集的范围。
输入域/输出域分析法:即是根据输入、输出的参数来进行设计用例。输入域例如登陆时用户名是要求9位数,可包含特殊字符,这时等价类和边界值无法全覆盖测试点,需要选择一些特殊的用户名进行校验。输入域重点就在于取特殊值,要求对系统的输入的存储和处理要有所了解。输出域例如查询功能,需要查询出.exe结尾的文件,这时需要用到输入域分析确定一个输出结果来检查是否实现查询功能。