实验3、黑盒测试:决策表测试方法

  • 格式:doc
  • 大小:2.69 MB
  • 文档页数:14

下载文档原格式

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

20 15 — 20 16 学年第 2 学期

软件测试技术课程

实验报告

学院:计算机科学技术

专业:软件工程

班级:软件二班

姓名:吴德宁

学号:041340217

任课教师:刘玉宝

实验日期:2016年 5 月 17 日实验题目实验3、黑盒测试:决策表测试方法

实验目的

1、掌握决策表的概念

2、掌握决策表测试用例设计法。

实验内容

1、对NextDate问题运用决策表法设计测试用例,并执行测试,撰写实验报告。

NextDate (int month, int day, int year)函数规定:输入三个整数:month、day 和year,函数的输出为输入日期后一天的日期。例如,输入为2006年3月7日,则函数的输出为2006年3月8日,year满足1920≤year≤2050。

实验步骤:

1)构造决策表

●M1={月份:30天/月},

M2={月份: 31天/月,12月除外},

M3={月份: 12月},M4={月份: 2月}

●D1={日期:1<=日<=27},

D2={日期:日=28},

D3={日期:日=29} ,

D4={日期:日=30},

D5={日期:日=31}

●Y1={年:闰年},Y2={年:平年}

注:二月:平年28天,闰年29天

条件桩:

●C1:月份在{M1,M2,M3,M4}中之一

●C2:日期在{D1,D2,D3,D4 ,D5}中之一

●C3:年在{Y1,Y2}中之一

动作桩:

●A1:不可能

●A2:日期增1

●A3:日期复位(置1)

●A4:月份增1

●A5:月份复位(置1)

●A6:年增1

1 2 3 4 5 6 7 8 9 10

C1:月M1 M1 M1 M1 M1 M2 M2 M2 M2 M2

C2:日D1 D2 D3 D4 D5 D1 D2 D3 D4 D5

C3:年

A1:不可能√

A2:日期+1 √√√√√√√

A3:日期复位

√√

(置1)

A4:月份+1 √√

A5:月份复位

(置1 )

A6:年+1

11 12 13 14 15 16 17 18 19 20 21 22

C1:月M3 M3 M3 M3 M3 M4 M4 M4 M4 M4 M4 M4

C2:日D1 D2 D3 D4 D5 D1 D2 D2 D3 D3 D4 D5

C3:年Y1 Y2 Y1 Y2 A1:不可能√√√A2: 日期+1 √√√√√√

√√√

A3: 日期复位

(置1)

A4: 月份+1 √√

A5: 月份复位

(置1 )

A6: 年+1 √

2)根据决策表设计测试用例,得到测试用例表(测试用例表格式同实验1)。

用例编号月日年预期输出

1--3 4 12/28/29 2001 2001年4月13/29/30日

4 4 30 2001 2001年5月1日

5 4 31 2001 不可能

2001 2001年1月16/29/30/31日

6--9 1 15/28/29/3

10 1 31 2001 2001年2月1日

11-14 12 15/28/29/3

2001 2001年12月16/29/30/31日

15 12 31 2001 2002年1月1日

16 2 15 2001 2001年2月16日

17 2 28 2004 2004年2月29日

18 2 28 2001 2001年3月1日

19 2 29 2005 2005年3月1日

20 2 29 2001 不可能

21,22 2 30/31 2001 不可能

3)执行测试,填写软件缺陷报告(软件缺陷报告格式同实验1)。

缺陷编号001 用例编号1—3 缺陷类型

严重级别严重优先级优先缺陷状态New

测试阶段□单元□集成□系统□√验收□其它()可重现性□是

□否BUG原因□需求分析□基本设计□详细设计□设计式样理解□√编程□数据库设计□环境配置□其它()

缺陷描述输入非数字字符,运行出现死循环

预期结果报告输入格式错误

重现步骤备注

按照步骤打开程序,输入非字符,运行

以下部分由BUG修改人填写

缺陷修改描述

测试人修正人确认人修正日期年月日缺陷编号001 用例编号缺陷类型

缺陷编号002 用例编号9 缺陷类型

严重级别一般优先级优先缺陷状态New 测试阶段□单元□集成□系统□√验收□其它()可重现性□是

□否BUG原因□需求分析□基本设计□详细设计□设计式样理解□√编程□数据库设计□环境配置□其它()

缺陷描述输入2012.1.30,出现两次2012.2.1

预期结果出现一次2012.2.1

重现步骤备注

按照步骤打开程序,输入2012.1.30,出现两次2012.2.1

以下部分由BUG修改人填写

缺陷修改描述

测试人修正人确认人修正日期年月日

缺陷编号003 用例编号12 缺陷类型

严重级别严重优先级优先缺陷状态New

测试阶段□单元□集成□系统□√验收□其它()可重现性□是□否BUG原因□需求分析□基本设计□详细设计□设计式样理解□√编程□数据库设计

□环境配置□其它()

缺陷描述输入2012.12.31出现2011.12.33

预期结果应该出现2013.1.2

重现步骤备注

按照步骤打开程序,输入2012.12.31出现2011.12.33

以下部分由BUG修改人填写

缺陷修改描述

测试人修正人确认人修正日期年月日

测试代码(C语言实现)

#include

using namespace std;

void NextDate(int year,int month,int day);

void main()

{

int year=0,month=0,day=0;

NextDate(year,month,day);

}

void NextDate(int year,int month,int day)

{

cout<<"请输入年份:"<

cin>>year;

while(!(year>=1811 && year<=2013))

{

cout<<"年份超过界限,请重新输入"<

cin>>year;

}