阅读以下利用场景法设计测试用例的技术说明,根据要求回答问题1~问题4。
[说明]
现有的软件通常都是由事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成了事件流。该软什设计思想也可被引入到软件测试中,从而生动描绘出事件触发时的情景,有利于测试设计者设计测试用例,同时使得测试用例更容易得到理解和执行。
用例场景是通过描述流经用例的路径来确定的过程,这个流经过程要从用例开始到结束遍历其中所有基本流(基本事件)和备选流(分支事件)。表7-15是对某IC卡加油机应用系统基本流的描述,表7-16是对该IC卡加油机应用系统备选流的描述。
表7-15 基本流描述表
|
表7-16 备选流描述表
|
[问题2] 场景中的每一个场景都需要确定测试用例,一般采用矩阵或决策表来确定和管理测试用例。表7-17是一种通用格式,表中各行代表各个测试用例,而各列代表测试用例的信息。本例中的测试用例包含测试用例ID号、场景(或说明/条件)、测试用例中涉及的所有数据元素(作为输入。或已经存在于数据库中),以及预期结果等项目。 测试用例的设计步骤通常是,首先确定执行用例场景所需的数据元素(本例中包括账号、是否黑名单卡、输入油量、账面金额和加油机油量),然后构建矩阵,最后确定包含执行场景所需的适当条件的测试用例。在表7-17的测试矩阵中,V表示有效数据元素,I表示无效数据元素,n/a表示不适用,例如CW01表示“成功加油”基本流。请按上述规定为其他地应用场景设计测试用例矩阵。
|
参考答案:
解析:[问题2]
这是一道要求考生掌握在场景法中设计测试用例的综合分析题。本题的分析思路如下。
①根据题目的描述可知,本案例中存在着以下5种场景:
场景1:基本流A;
场景2:基本流A、备选流B;
场景3:基本流A、备选流C;
场景4:基本流A、备选流D;
场景5:基本流A、备选流E。
②测试用例表(表7-17)已给出了场景1的测试用例,对于其他4行所填写的内容可以通过参照场景1的测试用例的解答思路进行。
③本案例中与场景2(AB)相关的描述如下。
A2,验证加油卡。加油机从加油卡的磁条中读取账户代码,并检查它是否属于可以接收的加油卡。
B,加油卡无效。在基本流A2过程中,该卡不能够识别,或是非本机可以使用的IC卡,加油机退卡,并退出基本流。
由“备选流B(加油卡无效)”的描述中提取出场景2(AB)的名称——“卡无效”,输入值是“账号无效”,预期结果是“退卡”。
④本案例中与场景3(AC)相关的描述如下。
A2,验证加油卡。加油机从加油卡的磁条中读取账户代码,并检查它是否属于可以接收的加油卡。
A3,验证黑名单。加油机验证卡账户是否存在于黑名单中,如属于黑名单,则加油机吞卡。
C,卡账户属于黑名单。在基本流A3过程中,判断该卡账户属于黑名单,例如,已经挂失,加油机吞卡并退出基本流。
由“备选流C(卡账户属于黑名单)”的描述提取出场景3(AC)的名称——“黑名单卡”,输入值是“账号有效”和“黑名单卡”,预期结果是“吞卡”。
⑤基本流A1~A4、备选流D的相关描述与本案例中场景4(AD)有关。由“备选流D(加油卡账面资金不足)”的描述提取出场景4(AD)的名称——“金额不足”,其输入值为“账号有效”、“非黑名单卡”、“输入购油量有效”、“加油机油量有效”和“账面金额无效”,预期结果是“提示错误,或重新输入购油量,或退卡”。
⑥基本流A1~A4、备选流E的相关描述与本案例中场景5(AE)有关。由“备选流E(加油机油量不足)”的描述提取出场景5(AE)的名称——“油量不足”,其输入值为“账号有效”、“非黑名单卡”、“输入购油量有效”、“账面金额有效”和“加油机油量无效”,预期结果是“提示错误,或重新输入购油量,或退卡”。
⑦将以上分析结果按照试题中的规定——“V表示有效数据元素,I表示无效数据元素,n/a表示不适用”,归纳整理成如表7-21所示的测试用例表。
表7-21 完整的测试用例表
|