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

上传人:b****7 文档编号:23781518 上传时间:2023-05-20 格式:DOCX 页数:48 大小:1.08MB
下载 相关 举报
软件测试用例分析习题完美整合版doc.docx_第1页
第1页 / 共48页
软件测试用例分析习题完美整合版doc.docx_第2页
第2页 / 共48页
软件测试用例分析习题完美整合版doc.docx_第3页
第3页 / 共48页
软件测试用例分析习题完美整合版doc.docx_第4页
第4页 / 共48页
软件测试用例分析习题完美整合版doc.docx_第5页
第5页 / 共48页
点击查看更多>>
下载资源
资源描述

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

《软件测试用例分析习题完美整合版doc.docx》由会员分享,可在线阅读,更多相关《软件测试用例分析习题完美整合版doc.docx(48页珍藏版)》请在冰豆网上搜索。

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

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

 

场景分析法

 

一、以答题业务为例:

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组:

 

:

程序的输入

 

三、找零钱最佳组合

 

假设

商店货

品价格(R)皆不大于100元(且为整数),若顾客付款

在100

元内(P)

,求找给顾客之最少货币个(张)数(货币面值50元

(N50)

,10元(N10),5元(N5),1元(N1)四

种)

1、分析输入的情形:

R>1000100R<=P<=100P

2、分析输出情形:

N50=14>=N10>=1N5=14>=N1>=1

3.分析每种情况,以RR1,RR2,RR3,RR4表示计算要找50,10,5,1

元货币

数时之剩余金额。

R>100R<=0

P>100P<=R

RR1>=50

RR2>=10

RR3>=5

RR4>=1

4.由上述之输入/输出条件组合出可能的情形。

R>100

R<=0

0100

0

0

0

0

0

0

0

0

0

5.为满足以上之各种情形,测试用例设计如下:

1.货品价格=101

2.货品价格=0

3.货品价格=-1

4.

货品价格=100,

付款金额=101

5.

货品价格=100,

付款金额=99

6.

货品价格=50,

付款金额=100

7.

货品价格=51,

付款金额=100

8.

货品价格=90,

付款金额=100

9.

货品价格=91,

付款金额=100

10.

货品价格=95,

付款金额=100

11.

货品价格=96,

付款金额=100

12.

货品价格=99,

付款金额=100

13.

货品价格=100,

付款金额=100

 

四、NextDate函数的边界值分析测试用例

 

在NextDate函数中,隐含规定了变量mouth和变量day的取值范围为1≤mouth≤12和

1≤day≤31,并设定变量year的取值范围为1912≤year≤2050。

 

判定表法

 

一、判定表法是一种分析多种输入条件的组合情况的方法,多种输入条件可以通过判定表来

完整地进行排列组合,从而不出现遗漏。

比如以下一个判断表达式:

If((a>0)||(b>0)||(c>0&&c<100))

{

 

}

这段程序中的判定条件可以用判定表如何表示

 

表中的c<=00=100是3个排他性条件,即其中同时只有一个条件会满足,也就是在同一列中只能有一个为Y,其他两个均为N。

 

根据判定表,我们可以输出测试用例如下:

 

二、问题要求:

”对功率大于50马力的机器、维修记录不全或已运行10年以上的机器,

应给予优先的维修处理”。

这里假定,“维修记录不全”和“优先维修处理”均已在别

处有更严格的定义。

请建立判定表。

①确定规则的个数:

这里有3个条件,每个条件有两个取值,故应有2*2*2=8种规则。

②列出所有的条件茬和动作桩:

③填入条件项。

可从最后1行条件项开始,逐行向上填满。

如第三行是:

YNYNYNYN,

第二行是:

YYNNYYNN等等。

④填入动作桩和动作顶。

这样便得到形如图的初始判定表。

 

化简,合并相似规则后得到图。

 

三、用决策表测试法测试以下程序:

该程序有三个输入变量month、day、year(month、day

和year均为整数值,并且满足:

1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。

例如,输入为2004年11月29日,则该程序的输出为

2000年12月1日。

1)

分析各种输入情况,列出为输入变量

month、day、year划分的有效等价类。

2)

分析程序规格说明,结合以上等价类划分的情况给出问题规定的可能采取的操作

(即列出

所有的动作桩)。

3)根据

(1)和

(2),画出简化后的决策表。

案例分析如下:

 

month变量的有效等价类:

M1:

{month=4,6,9,11}

M2:

{month=1,3,5,7,8,10}

M3:

{month=12}

M4:

{month=2}

2)day变量的有效等价类:

D1:

{1≤day≤26}D2:

{day=27}D3:

{day=28}

D4:

{day=29}D5:

{day=30}D6:

{day=31}

3)year变量的有效等价类:

Y1:

{year是闰年}Y2:

{year

 

不是闰年

 

}

4)考虑各种有效的输入情况,程序中可能采取的操作有以下六种:

a1:

day+2

a2:

day=2

a3:

day=1

a4:

month+1

a5:

month=1

a6:

year+1

4.判定表在功能测试中的应用

1)一些软件的功能需求可用判定表表达得非常清楚,在检验程序的功能时判定表也就成为一

个不错的工具。

如果一个软件的规格说明指出:

I.当条件1和条件2满足,并且条件3和条件4不满足,或者当条件1、3和条件4满足时,要执行操作1。

II.在任一个条件都不满足时,要执行操作2。

III.在条件1不满足,而条件4被满足时,要执行操作3。

根据规格说明得到如下判定表

 

这里,判定表只给出了

16

种规则中的

8种。

事实上,除这

8条以外的一些规则是指当不能

满足指定的条件,执行

3种操作时,要执行1个默许的操作。

在没必要时,判定表通常可略

去这些规则。

但如果用判定表来设计测试用例,就必须列出这些默许规则(如下表)

规则5

规则6

规则7

规则8

条件1

-

N

Y

Y

条件2

-

Y

Y

N

条件3

Y

N

N

N

条件4

N

N

Y

-

默许操

x

x

x

x

 

因果图法

 

A.输入条件的约束有以下4类:

①E约束(异):

a和b中至多有一个可能为1,即a和b不能同时为1。

②I约束(或):

a、b和c中至少有一个必须是1,即a、b和c不能同时为

③O约束(唯一);a和b必须有一个,且仅有1个为1。

 

0。

④R约束(要求):

a是1时,b必须是1,即不可能a是1时b是0。

B.输出条件约束类型

输出条件的约束只有M约束(强制):

若结果a是1,则结果b强制为0。

 

一、某软件规格说明书包含这样的要求:

第一列字符必须是A或B,第二列字符必须是一个

数字,在此情况下进行文件的修改,但如果第一列字符不正确,则给出信息L;如果第二列

字符不是数字,则给出信息M。

解答:

1)根据题意,原因和结果如下:

原因:

1——第一列字符是A;

2——第一列字符是B;

3——第二列字符是一数字。

结果:

21——修改文件;

22——给出信息L;

23——给出信息M。

2)其对应的因果图如下:

11为中间节点;考虑到原因1和原因2不可能同时为1,因此在因果图上施加E约束。

 

3)根据因果图建立判定表。

 

表中8种情况的左面两列情况中,原因①和原因②同时为1,这是不可能出

现的,故应排除这两种情况。

表的最下一栏给出了6种情况的测试用例,这是我们所需要的数据。

 

二、有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。

其规格说明如下:

若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。

若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮

后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在

送出饮料的同时退还5角硬币。

1)分析这一段说明,列出原因和结果

原因:

1.售货机有零钱找2.投入1元硬币3.投入5角硬币4.押下橙汁按钮5.押下啤酒按

结果:

21.售货机〖零钱找完〗灯亮

22.退还1元硬币

23.退还5角硬币

24.送出橙汁饮料

25.送出啤酒饮料

2)画出因果图,如图所示。

所有原因结点列在左边,所有结果结点列在右边。

建立中间结点,表示处理的中间状态。

中间结点:

11.投入1元硬币且押下饮料按钮

12.押下〖橙汁〗或〖啤酒〗的按钮

13.应当找5角零钱并且售货机有零钱找

14.钱已付清

 

3)转换成判定表:

 

4)在判定表中,阴影部分表示因违反约束条件的不可能出现的情况,删去。

第16列与第

32列因什么动作也没做,也删去。

最后可根据剩下的16列作为确定测试用例的依据。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1