问答题 .阅读下列说明,回答问题1至问题4。
    【说明】
    软件系统几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。场景法就是通过用例场景描述业务操作流程,从用例开始到结束遍历应用流程上的所有基本流(基本事件)和备选流(分支事件)。下面两个表是对某IC卡加油机应用系统的基本流和备选流的描述。
    基本流A:
序号 用例名称 用例描述
1 准备加油 客户将IC加油卡插入加油机
2 验证加油卡 加油机从加油卡的磁条中读取账户代码,并检查它是否属于可以
接收的加油卡
3 验证黑名单 加油机验证卡账户是否存在于黑名单中,如果属于黑名单,加油
机吞卡
4 输入购油量 客户输入需要购买的汽油数量
5 加油 加油机完成加油操作,从加油卡中扣除相应金额
6 返回加油卡 退还加油卡
备选流:
序号 用例名称 用例描述
B 加油卡无效 在基本流A2过程中,该卡不能够识别或是非本机可以使用的IC
卡,加油机退卡,并退出基本流
C 卡账户属于黑名单 在基本流A3过程中,判断该卡账户属于黑名单,例如:已经挂
失,加油机吞卡退出基本流
D 加油卡账面现金不足 系统判断加油卡内现金不足,重新加入基本流A4,或选择退卡
E 加油机油量不足 系统判断加油机内油量不足,重新加入基本流A4,或选择退卡
问答题 1.  【问题1】
    使用场景法设计测试案例,指出场景涉及到的基本流和备选流,基本流用字母A表示,备选流用题干中描述的相应字母表示。
【正确答案】场景1:A
   场景2:A、B
   场景3:A、C
   场景4:A、D
   场景5:A、E
【答案解析】
问答题 2.  【问题2】
    场景中的每一个场景都需要确定测试用例,一般采用矩阵来确定和管理测试用例。下表是一种通用格式,其中行代表各个测试用例,列代表测试用例的信息。本例中的测试用例包含测试用例ID、场景、测试用例中涉及的所有数据元素和预期结果等项目。首先确定执行用例场景所需的数据元素(本例中包括账号、是否是黑名单卡、输入油量、账面金额、加油机油量),然后构建矩阵,最后要确定包含执行场景所需的适当条件的测试用例。下表中,V表示有效数据元素;I表示无效数据元素;n/a表示不适用,例如C01表示“成功加油”基本流。请按上述规定为其他应用场景设计用例矩阵。
测试用例表
测试用例ID 场景 账号 是否是黑
名单卡
输入油
账面金
加油机油 预期结果
C01. 场景1:成功加油 V I V V V 成功加油
C02.              
C03.              
C04.              
C05.              
               
【正确答案】
测试用
例ID号
场景 账号 是否黑名
单卡
输入
油量
账面
金额
加油机
油量
预期结果
C02. 场景2:卡无效 I n/a n/a n/a n/a 退卡
C03. 场景3:黑名单卡 V V n/a n/a n/a 吞卡
C04. 场景4:金额不足 V I V I V 提示错误,重新输入加
油量
C05. 场景5:油量不足 V I V V I 提示错误,重新输入加
油量
【答案解析】
问答题 3.  【问题3】
    假如每升油4元人民币,用户的账户金额为1000元,加油机内油量足够,那么在A4输入油量的过程中,请运用边界值分析方法为A4选取合适的输入数据(即油量,单位:升)。
【正确答案】(1)0升。
   (2)250升。
   (3)251升。
【答案解析】
问答题 4.  【问题4】
    假设本系统开发人员在开发过程中通过测试发现了20个错误,独立的测试组通过上述测试用例发现了100个软件错误,系统上线后,用户反馈了30个错误,请计算缺陷探测率(DDP)。
【正确答案】DDP=Bugstester÷(Bugstester+Bugscustomer=(20+100)÷(20+100+30)=80%(0.8)
   式中:Bugstester为测试者发现的错误数;Bugscustomer为客户发现并反馈技术支持人员进行修复的错误数。
【答案解析】