软件测试-测试用例设计

等价类的划分

将测试过程中的输入、输出、操作等相似内容分组,从每组中挑选具有代表性的内容作为测试用例,划分为有效等价类和无效等价类。
格式:测试示例(R,P):
在这里插入图片描述

1.输入值

1.合法输入、不合法输入(上界、下界)
2.(w,f)----(字符串,文件名)—返回字符串在文件中出现的次数
W:非空、空
F: 存在且非空、不存在、存在为空

2.输出值

输出值为0
输出值为最大值、最小值
其他所有输出值

3.变量取值范围

在这里插入图片描述

4. 等价类划分方法

确定输入域(变量、类型、取值)
等价类划分(变量笛卡尔积)
组合等价类
消除不可测等价类

例:
①三角形问题
任意输入3个整数作为三角形的3条边的长度,判断三角形的类型
https://blog.csdn.net/u010529212/article/details/14445553
②NextDate问题
输入月份、日期和年,函数返回输入日期后面的那个日期。如果年月日不符合要求,则NextDate都会产生一个输出,“无效输入日期”。(year∈[1912,2050])
http://www.docin.com/p-1372559050.html
(强建壮等价类测试用例、改进等价类划分测试用例)

边界值分析

对输入或输出的边界值进行测试的一种黑盒测试方法。
通常边界值分析法是作为对等价类划分法的补充,测试用例来自等价类的边界。
格式:测试示例(R,P):
在这里插入图片描述

1.边界值分析的原则

若输入(输出)条件规定了值的取值范围,则以该范围的边界内和边界附近的值作为测试用例。
若输入(输出)条件规定了值的个数,则以最大个数、最小个数、比最大个数多一、比最小个数少一的数作为测试用例。
若规格说明书中规定输入或输出是一个有序集合,则选取有序集合的第一个和最后一个元素作为测试用例。
若程序使用了一个内部数据结构,则选择这个数据结构的边界上的值作为测试用例。

2.示例

①有一Web系统某查询条件是 1990 年 1 月到 2049 年 12 月,由 6 为数组表示,前 4 位表示年份,后 2 位表示月份
从日期的长度角度,考虑 5 位的数字字符、7 位的数字字符
从年份的取值范围角度,考虑年份 1989、1990、2049、2050
从月份的取值范围角度,考虑月份 00、01、12、13
http://www.docin.com/p-1372559050.html(NextDate问题 边界值分析法)

因果图-决策表

适合于检查程序输入条件的各种组合情况。
因果图的“因”——输入条件
因果图的“果”——输出结果

1.因果图规定

①基本符号:Ci表示原因,用Ei表示结果,各结点表示状态,可取值“0”或“1”。“0”表示某状态不出现,“1”表示某状态出现。
在这里插入图片描述

②约束关系:
在这里插入图片描述

2.示例:售货机

售货机:简化情况,假设投币只有1元和5毛两种;零钱默认都是5毛;有橙汁和可乐两种饮料,饮料价格均为5毛;机器没零钱的时候零钱找完的灯会亮

①梳理输入与输入,输入与输出之间的约束关系
输入:
(1)售货机有零钱
(2)投币1元
(3)投币5毛
(4)按橙汁按钮
(5)按可乐按钮
输出:
(21)零钱找完的灯亮
(22)退回1元
(23)退回5毛
(24)出橙汁
(25)出可乐
输入与输入的约束关系:
(2)、(3)是异的关系,至多出现一个,可能一个都不发生
(4)、(5)是异的关系,至多出现一个,可能一个都不发生
输入与输出的约束关系:
(1)、(21)是非的关系

② 绘制因果图
在这里插入图片描述
③绘制判定表
在这里插入图片描述
④根据决策表设计测试用例的输入和输出数据

QQ登录示例:https://blog.csdn.net/YZJ_0722/article/details/80580759

决策表法

横向的条件(因)和动作(果)
纵向的规则(测试用例)组合而成。

1.决策表组成

1)条件桩:列出了问题的所有条件。通常认为列出的条件的次序无关紧要。
2)动作桩:列出了问题规定可能采取的操作。这些操作的排列顺序没有约束。
3)条件项:列出针对它左列条件的取值。在所有可能情况下的真假值。
4)动作项:列出在条件项的各种取值情况下应该采取的动作。
在这里插入图片描述

2.建立步骤

构造决策表的5个步骤:
(1) 确定规则的个数。有n个条件的决策表有2^n个规则(每个条件取真、假值)。
(2) 列出所有的条件桩和动作桩。
(3) 填入条件项。
(4) 填入动作项,得到初始决策表。
(5) 简化决策表,合并相似规则。

3.简化规则

若表中有两条以上规则具有相同的动作,并且在条件项之间存在极为相似的关系,便可以合并。合并后的条件项用符号“-”表示,说明执行的动作与该条件的取值无关,称为无关条件。

4.示例:三角形问题决策表

在这里插入图片描述
http://www.docin.com/p-1372559050.html (NextDate问题 决策表法 )