软件测试用例分析-习题完美整合版.doc
- 格式:doc
- 大小:1.88 MB
- 文档页数:23
场景分析法
一、以答题业务为例:
1. 答对题目增加题目积分,积分达到设定值时奖励一个礼包;
2. 取题规则为随机不重复 ;
3. 答错题目后答新题 .
开始答题
是否存在
有效题目
提供题目及备选答案
答案是否
正确 给予无有效 题目提示
增加题目积分
积分大于或等于设定值
结束奖励一个礼包
1. 确定基本流与备选流 基本流 : 步骤 1. 开始答题
步骤 2. 判断是否存在有效题目,存在有效题目,处理 : 提供题目及备选答案
步骤 3. 用户答题并答对题目,增加用户相应积分。
步骤 4. 判断积分是否达到设定值,达到,获取一个礼包,流程结束。
备选流 1: 不存在有效题目
基本流步骤 2 时,题库不存在未答题目,处理:给予无有效题目提示,流程结束。
备选流 2: 答错题目
基本流步骤 3 时,答错题目,处理:提示用户答错题目,回到基本流步骤 2
备选流 3:答题后积分达不到设定值
基本流步骤 4 时,答对题后积分仍达不到设定值,处理:回到基本流步骤 2
2. 确定以下用例场景:
3. 通过从确定执行用例场景所需的数据元素入手构建矩阵
4. 设计数据,把数据填入上面的用例表中
二、下图所示是 ATM例子的流程示意图。
2. 场景设计:下表所示是生成的场景。
3. 用例设计
4. 测试用例表
三、用户进入一个在线购物网站进行购物,选购物品后, 进行在线购买,这时需要使用账号登录,登录成功后,进行付钱交易,交易成功后,生成订购单,完成整个购物过程。
第一步:确定基本流和备选流
基本流:登录在线网站→选择物品→登录账号→付款→生成订单;备选流 1:账户不存在;
备选流 2:账户密码错误;
备选流 3:用户账户余额不足;
备选流 4:用户账户没钱。
第二步:根据基本流和备选流确定场景
场景 1 成功购物:备选流;
场景 2 账号不存在:基本流,备选流 1;
场景 3 账号密码错误:基本流,备选流 2;
场景 4 账户余额不足:基本流,备选流 3;
场景 5 账户没钱:基本流,备选流4。
第三步:对每一个场景生成相应的测试用例
测试用例 场景/条件 账号 密码 用户账 预期结果
ID 号余额
1 场景 1:成功购物 V V V 成功购物
2 场景 2:账号不存在 1 n/a n/a 提示账号不存在
3 场景 3 :账号密码错误 V 1 n/a 提示账号密码错误,返
(账号正确,密码错误) 回基本流步骤 3
4 场景 4:用户账号余额不 V V 1 提示用户账号余额不
足 足,请充值
5 场景 5:用户账号没钱 V V 1 提示用户账号没有钱,
请充值
第四步:设计测试数据
测试用 场景/条件 账号 密码 用户账 预期结果
例 ID 号余额
1 场景 1:成功购物 Test 123456 800 成功购物, 账号余额减少
100 元
2 场景 2:账号不存在 aa n/a n/a 提示账号不存在
3 场景 3:账号密码错误 Test 111111 n/a 提示账号密码错误, 返回
(账号正确,密码错误) 基本流步骤 3
4 场景 4:用户账号余额不 Test 123456 50 提示用户账号余额不足,
足 请充值
5 场景 5:用户账号没钱 Test 123456 0 提示用户账号没有钱, 请
充值
等价类划分法
一、计算保费费率的程序
( 1)分析程序规格说明中给出和隐含的对输入条件的要求,列出等价类表(包括有效等价类和无效等价类) 。
年龄:一位、两位或三位整数,值的有效范围为 0~120
性别:一位英文字符,只能取值‘ M’或‘ F’
婚姻:字符,只能取值‘已婚’或‘未婚’
抚养人数:空白或一位非零整数( 1~9)
(2)根据( 1)中的等价类表,设计能覆盖所有等价类的测试用例。
二、某城市电话号码由三部分组成,分别是:
地区码—— 空白或三位数字;
前 缀—— 非‘ 0’或‘ 1’开头的三位数字;
后 缀—— 4 位数字。
假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。
请使用等价类划分法设计测试用例,给出等价类列表,设计测试用例。
三、根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。
一个程序读入 3 个整数,把这三个数值看作一个三角形的 3 条边的长度值。这个程序要
打印出信息,说明这个三角形是不等边的、是等腰的、还是等边的。
四、设有一个档案管理系统,要求用户输入以年月表示的日期。假设日期限定在月~2049 年 12 月,并规定日期由 6 位数字字符组成,前 4 位表示年,后等价类划分法设计测试用例,来测试程序的 " 日期检查功能 " 。
1990 年 1
2 位表示月。现用
1) 划分等价类并编号 , 下表等价类划分的结果
输入等价类 有效等价类 无效等价类
日期的类型及长度 ①6 位数字字符 ②有非数字字符
③少于 6 位数字字符
④多于 6 位数字字符
年份范围 ⑤在 1990~2049 之间 ⑥小于 1990
⑦大于 2049
月份范围 ⑧在 01~12 之间 ⑨等于 00
⑩大于 12
2) 设计测试用例, 以便覆盖所有的有效等价类在表中列出了
3 个有效等价类, 编号分别为①、
⑤、⑧,设计的测试用例如下:
测试数据 期望结果
200211 输入有效
覆盖的有效等价类
①、⑤、⑧
3) 为每一个无效等价类设计一个测试用例,设计结果如下:
测试数据 期望结果 覆盖的无效等价类
95June 无效输入 ②
20036 无效输入 ③
2001006 无效输入 ④
198912 无效输入 ⑥
200401 无效输入 ⑦
200100 无效输入 ⑨
200113 无效输入 ⑩
五、NextDate 函数包含三个变量: month 、 day 和 year ,函数的输出为输入日期后一天
的日期。 例如,输入为 2006 年 3 月 7 日,则函数的输出为 2006 年 3 月 8 日 。要求输入
变量 month 、 day 和 year 均为整数值,并且满足下列条件:
①1≤month≤12
②1≤day≤31
③ 1920≤year ≤2050
1) 有效等价类为: M1= { 月份: 1≤月份≤ 12}
D1 ={ 日期: 1≤日期≤ 31}
Y1 ={ 年: 1812≤年≤ 2012}
2) 若条件 ① ~ ③中任何一个条件失效,则 NextDate 函数都会产生一个输出,指明相
应的变量超出取值范围,比如 "month 的值不在 1-12 范围当中 " 。显然还存在着大量的
year 、 month 、 day 的无效组合, NextDate 函数将这些组合作统一的输出: " 无效输
入日期 " 。其无效等价类为:
M2= { 月份:月份 <1}
M3= { 月份:月份 >12}
D2= { 日期:日期 <1}
D3= { 日期:日期 >31}
Y2= { 年:年 <1812}
Y3= { 年:年 >2012}
边界值分析法
一、根据下面给出的规格说明,利用边界值分析的方法,给出足够的测试用例。
“一个程序读入 3 个整数,把这三个数值看作一个三角形的 3 条边的长度值。 这个程序要打
印出信息,说明这个三角形是不等边的、是等腰的、还是等边的。”
在三角形问题描述中, 除了要求边长是整数外, 没有给出其它的限制条件。在此,我们将
三角形每边边长的取范围值设值为 [1, 100]
我们可以设三角形的 3 条边分别为 A,B,C。如果它们能够构成三角形的 3 条边, 必须满足:
A>0, B>0,C>0,且 A+B>C, B+C>A, A+C>B。
如果是等腰的,还要判断 A=B,或 B=C,或 A=C。
如果是等边的,则需判断是否 A=B,且 B=C,且 A=C。
二、现有一个学生标准化考试批阅试卷文件由一些有 80 个字符的记录组成
, 产生成绩报告的程序。 其规格说明如下 , 如下图所示,所有记录分为 3 组:
: 程序的输入