azure011328

导航

 

     

 

 

实验项目名称:实验一          

一、 实验目的

  1. 掌握黑盒测试的基础知识;
  2. 掌握黑盒测试的检查内容及测试目的;
  3. 掌握黑盒测试的几种基本测试方法:等价类划分方法、边界值分析方法、因果图法和决策表法;

 

二、 实验内容

1、 设计函数实现输入日期显示星期几,并用等价类及边界值法测试

2、 找零钱最佳组合

假设商店货品价格(R) 都不大于100元(且为整数),若顾客付款(P)100元内,现有一个程序能在每位顾客付款后给出找零钱的最佳组合(找给顾客货币张数最少)。 假定此商店的货币面值只包括:50(N50)10(N10)5(N5)1(N1) 四种。

   请结合等价类划分法和边界值分析法为上述程序设计 出相应的测试用例。

3、有一个饮料自动售货机(处理单价为5角钱)的控制处理软件,它的软件规格说明如下:

若投入5角钱的硬币,按下“橙汁”或“啤酒”的按钮,则相应的饮料就送出来。若投入1元钱的硬币,同样也是按“橙汁”或“啤酒”的按钮,则自动售货机在送出相应饮料的同时退回5角钱的硬币。

4、航空服务查询问题:根据航线,仓位,飞行时间查询航空服务。

假设一个中国的航空公司规定:

① 中国去欧美的航线所有座位都有食物供应,每个座位都可以播放电影。

② 中国去非欧美的国外航线都有食物供应,只有商务仓可以播放电影。

③ 中国国内的航班的商务仓有食物供应,但是不可以播放电影

④ 中国国内航班的经济仓只有当飞行时间大于2小时时才有食物供应,但是不可以播放电影。

 

 

三、 实验步骤及结果

1、设计函数实现输入日期显示星期几,并用等价类及边界值法测试

 

实验步骤:

① 设计程序

源程序见学习通平台

② 划分等价类,得到等价类表。等价类表格式如下:

输入条件

有效等价类

唯一标识

无效等价类

唯一标识

日期格式

式为YYYY-MM-DD

1

格式不为YYYY-MM-DD

2

日期范围

日期在1900-01-01到2099-12-31之间

3

日期小于1900-01-01或大于2099-12-31

4

日期有效性

日期有效

5

日期无效

6

月份有效性

月份在0112之间

7

月份小于01或大于12

8

日期有效性

日期符合月份的天数

9

日期不符合月份的天数

10

闰年二月

闰年二月有29

11

非闰年二月有28

12

 

③ 运用等价类划分法设计测试用例,得到测试用例表。测试用例表格式如下:

 

 

 

 

 

 

序号

输入数据

覆盖等价类

输出

1

2023-10-01

1,3,5,7,9

Sunday

2

2023-13-01

2,8

无效日期

3

abc

2

无效日期

4

1899-12-31

4

无效日期

5

2100-01-01

4

无效日期

6

2023-02-28

1,3,57,9

Tuesday

7

2024-02-29

1,3,5,7,11

Thursday

8

2023-02-29

1, 3, 5, 7, 12

无效日期

9

2023-04-31

1, 3, 5, 7, 10

无效日期

10

2023-06-30

1, 3, 5, 7, 9

Friday

11

2023-07-31

1, 3, 5, 7, 9

Monday

12

2023-11-30

1, 3, 5, 7, 9

Thursday

 

④  运用边界值法设计测试用例。

序号

 

输入数据

覆盖边界值

预期输出

1

1900-01-01

最小日期

Monday

2

2099-12-31

最大日期

Wednesday

3

2023-01-31

1月最大天数

Tuesday

4

2023-02-28

非闰年2

Tuesday

5

2024-02-29

闰年2

Thursday

6

2023-04-30

4月最大天数

Sunday

7

2023-06-30

6月最大天数

Friday

8

2023-09-30

9月最大天数

Saturday

9

2023-11-30

11月最大天数

Thursday

 

2、找零钱最佳组合

   假设商店货品价格(R) 都不大于100元(且为整数),若顾客付款(P)100元内,现有一个程序能在每位顾客付款后给出找零钱的最佳组合(找给顾客货币张数最少)。 假定此商店的货币面值只包括:50(N50)10(N10) 5(N5)1(N1) 四种。

   请结合等价类划分法和边界值分析法为上述程序设计 出相应的测试用例。

实验步骤:

① 设计程序

源程序见学习通平台

② 划分等价类,得到等价类表。等价类表格式如下:

输入条件

 

有效等价类

唯一标识

无效等价类

唯一标识

货品价格(R

0 < R ≤ 100,且为整数

1

R ≤ 0 R > 100,或 R 不是整数

2

顾客付款(P

R ≤ P ≤ 100,且为整数

3

P < R P > 100,或 P 不是整数

4

找零金额(P-R

0 ≤ (P - R) ≤ 100,且为整数

5

(P - R) < 0 (P - R) > 100,或 (P - R) 不是整数

6

 

③ 运用等价类划分法设计测试用例,得到测试用例表。测试用例表格式如下:

序号

 

输入数据 (R, P)

 

覆盖等价类

输出 (N50, N10, N5, N1)

1

(50, 100)

1, 3, 5

(1, 0, 0, 0)

2

(99, 100)

1, 3, 5

(0, 0, 0, 1)

3

(0, 100)

2

无效输入

4

(101, 100)

2

无效输入

5

(50, 49)

4

无效输入

6

(50, 101)

4

无效输入

7

(50.5, 100)

2

无效输入

8

(50, 100.5)

4

无效输入

 

④ 运用边界值法设计测试用例。

序号

输入数据 (R, P)

覆盖边界值

预期输出 (N50, N10, N5, N1)

1

(1, 1)

R=1, P=1

(0, 0, 0, 0)

2

(100, 100)

R=100, P=100

(0, 0, 0, 0)

3

(0, 100)

R=0

无效输入

4

(101, 100)

R=101

无效输入

5

(50, 49)

P=R-1

无效输入

6

(50, 101)

P=101

无效输入

7

(50, 50)

P=R

(0, 0, 0, 0)

8

(50, 150)

P=150

无效输入

 

 

 

3、有一个饮料自动售货机(处理单价为5角钱)的控制处理软件,它的软件规格说明如下:

若投入5角钱的硬币,按下橙汁啤酒的按钮,则相应的饮料就送出来。若投入1元钱的硬币,同样也是按橙汁啤酒的按钮,则自动售货机在送出相应饮料的同时退回5角钱的硬币。

模拟程序如下:

 

因果图法测试该程序,并撰写实验报告。

实验步骤:

① 编写程序

源程序见学习通平台

②分析原因与结果

原因:

 

投入5角钱

 

投入1元钱

 

选择橙汁

 

选择啤酒

 

结果:

 

送出橙汁

 

送出啤酒

 

找零5角钱

③画出因果图

 

⑤ 转化为决策表

C1 (5)

C2 (1)

C3 (橙汁)

 

C4 (啤酒)

E1 (送出橙汁)

E2 (送出啤酒)

E3 (找零5)

T

F

T

F

T

F

F

T

F

F

T

F

T

F

F

T

T

F

T

F

T

F

T

F

T

F

T

T

 

⑥ 根据决策表设计测试用例,得到测试用例表

序号

输入数据 (投入金额, 选择饮料)

预期输出

1

(0.5, 橙汁)

送出橙汁

2

(0.5, 啤酒)

送出啤酒

3

(1.0, 橙汁)


送出橙汁,找零5

 

4

(1.0, 啤酒)

送出啤酒,找零5

5

(0.3, 橙汁)

请投入至少5角钱

6

(1.5, 橙汁)

请投入5角或1

 

 

4、航空服务查询问题:根据航线,仓位,飞行时间查询航空服务。

假设一个中国的航空公司规定:

① 中国去欧美的航线所有座位都有食物供应,每个座位都可以播放电影。

② 中国去非欧美的国外航线都有食物供应,只有商务仓可以播放电影。

③ 中国国内的航班的商务仓有食物供应,但是不可以播放电影

④ 中国国内航班的经济仓只有当飞行时间大于2小时时才有食物供应,但是不可以播放电影。

请用程序实现上述功能,并用决策表法设计测试用例,再执行测试,撰写实验报告。

 

 

实验步骤:

①  编写程序

源程序见学习通平台

 

② 构造决策表

条件

 

规则 1

规则 2

规则 3

规则 4

规则 5

规则 6

航线

中国去欧美

中国去欧美

中国去欧美

中国去欧美

中国国内

中国国内

舱位

商务舱

经济舱

商务舱

经济舱

商务舱

经济舱

飞行时间 > 2 小时

-

-

-

-

-

食物供应

播放电影

可以

可以

可以

不可以

不可以

不可以

 

 根据决策表设计测试用例,得到测试用例表

 

序号

输入数据 (航线, 舱位, 飞行时间)

预期输出

结果

1

(中国去欧美, 商务舱, 3)

有食物供应, 可以播放电影

通过

2

(中国去欧美, 经济舱, 3)

有食物供应, 可以播放电影

通过

3

(中国去非欧美, 商务舱, 3)

有食物供应, 可以播放电影

通过

4

(中国去非欧美, 经济舱, 3)

有食物供应, 不可以播放电影

通过

5

(中国国内, 商务舱, 3)

有食物供应, 不可以播放电影

通过

6

(中国国内, 经济舱, 1)

无食物供应, 不可以播放电影

通过

7

(中国国内, 经济舱, 3)

有食物供应, 不可以播放电影

通过

5、旅馆住宿系统中,旅馆业主可进行添加房间操作。

旅馆业主登录旅馆住宿系统后,可以请求添加房间;

待进入“房间管理”对话框,单击“添加”按钮可进行添加房间操作;

添加房间时,可以设定房间的房间编号、房间类型、房间描述信息;

添加房间信息不能缺失,若某一项未填写,要给出提示信息;

房间编号长度不超过5个字符;

房间描述长度不超过1000个字符;

房间信息不能重复,成功填写后,可进行保存或取消操作,之后返回“房间管理”对话框,结束添加房间流程。

 

用例ID

测试场景

输入数据

预期结果

TC-001

正常添加

所有字段有效

添加成功,返回管理界面

TC-002

缺失必填

各字段分别缺失

对应字段错误提示

TC-003

编号超长

编号6字符

提示长度超限

TC-004

描述超长

描述1001字符

提示长度超限

TC-005

重复编号

使用已存在编号

提示编号重复

TC-006

编号边界

5字符/6字符

接受/拒绝

TC-007

描述边界

1000/1001字符

接受/拒绝

TC-008

取消操作

填写后取消

不保存返回

TC-009

添加后验证

成功添加后查看列表

新房间正确显示

TC-0010

特殊字符

编号含@#

根据需求提示

TC-0011

非法类型

未定义类型

提示无效类型

 

 

四、 个人体会

① 在实际的测试中,如何设计测试用例才能达到用最少的测试用例检测出最多的缺陷;

等价类划分法:将输入域划分为若干等价类,每个等价类中的输入数据具有相同的测试效果。通过选择代表性的测试用例,可以减少测试用例的数量。

边界值分析法:重点关注输入域的边界值,因为边界值往往是错误的高发区。通过测试边界值,可以有效发现潜在的缺陷。

决策表法:通过分析输入条件与输出结果之间的逻辑关系,设计出覆盖所有可能情况的测试用例,确保测试的全面性。

② 在进行用例设计时,如何考虑软件测试用例的充分性和减少软件测试用例的冗余性;

充分性:确保测试用例覆盖了所有的功能需求和业务逻辑,尤其是边界条件和异常情况。通过等价类划分、边界值分析等方法,确保测试用例的全面性。

减少冗余:避免设计重复的测试用例,确保每个测试用例都有其独特的测试目的。可以通过合并相似的测试用例,或者使用参数化测试来减少冗余。

 

posted on 2025-06-11 08:52  淮竹i  阅读(13)  评论(0)    收藏  举报