软件测试用例分析 习题完美整合版

  • 格式:doc
  • 大小:2.44 MB
  • 文档页数:22

下载文档原格式

  / 22
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

场景分析法

一、以答题业务为例:

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 12345

6 0 提示用户账号没有钱,请

充值

等价类划分法

一、计算保费费率的程序

(1)分析程序规格说明中给出和隐含的对输入条件的要求,列出等价类表(包括有效等价类和无效等价类)。

年龄:一位、两位或三位整数,值的有效范围为0~120

性别:一位英文字符,只能取值‘M’或‘F’

婚姻:字符,只能取值‘已婚’或‘未婚’

抚养人数:空白或一位非零整数(1~9)

(2)根据(1)中的等价类表,设计能覆盖所有等价类的测试用例。

二、某城市电话号码由三部分组成,分别是:

地区码——空白或三位数字;

前缀——非‘0’或‘1’开头的三位数字;

后缀——4位数字。

假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。请使用等价类划分法设计测试用例,给出等价类列表,设计测试用例。

三、根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。

一个程序读入3个整数,把这三个数值看作一个三角形的3条边的长度值。这个程序要打印出信息,说明这个三角形是不等边的、是等腰的、还是等边的。

四、设有一个档案管理系统,要求用户输入以年月表示的日期。假设日期限定在1990年1月~2049年12月,并规定日期由6位数字字符组成,前4位表示年,后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}