计算器黑盒测试实验报告.docx

上传人:b****8 文档编号:9391801 上传时间:2023-02-04 格式:DOCX 页数:29 大小:322.81KB
下载 相关 举报
计算器黑盒测试实验报告.docx_第1页
第1页 / 共29页
计算器黑盒测试实验报告.docx_第2页
第2页 / 共29页
计算器黑盒测试实验报告.docx_第3页
第3页 / 共29页
计算器黑盒测试实验报告.docx_第4页
第4页 / 共29页
计算器黑盒测试实验报告.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

计算器黑盒测试实验报告.docx

《计算器黑盒测试实验报告.docx》由会员分享,可在线阅读,更多相关《计算器黑盒测试实验报告.docx(29页珍藏版)》请在冰豆网上搜索。

计算器黑盒测试实验报告.docx

计算器黑盒测试实验报告

西南科技大学计算机学院

实验报告

实验名称计算器黑盒测试

实验地点

实验日期

指导教师

学生班级

学生姓名

学生学号

提交日期

 

软件教研室制

 

一、测试目的

设计测试用例、使用各种测试方法进行计算器的测试,并对测试结果进行分析

二、测试内容

1.软件说明:

实现一个小的计算器程序,只需要完成加、减、乘、除运算,设计测试用例,并对测试结果进行分析,同时计算器运行稳定。

2、设计测试用例

3、执行测试

4、测试结果分析

5、源代码

三、测试步骤

(一)、计算器界面

 

2、设计测试用例

(1)等价类测试:

1、4个等价类测试用例的分析过程如下:

测试用例

预期输出

整型

55+50

78-24

15*25

36/4

正常运算

小数

25.3+12.7

14.3-11.7

25.6*12.8

50.2/20.7

正常运算

负数

-20+-21

(-15)-(-14)

-12*-12

-16/-5

正常运算

无效输入

E1+t2

G4-k5

I5*l6

Ff/se

非法操作无法输入

2、对应测试的结果分析:

整型:

1.加(55+50)

2.减(78-24)

3.乘(15*25)

4.除(36/4)

小数

1.加(25.3+12.7)

2.减(14.3-11.7)

3.乘(25.6*12.8)

4.除(50.2/20.7)

 

负数

6.加-20+-21

7.减(-15)-(-14)

8.乘-12*-12

9.除-16/-5

(其中算式写法错误导致正常运算错误)

无效输入

1.加(E1+t2):

程序中无效数字无法正常输入,程序无法进行。

2.减(G4-k5)

程序中无效数字无法正常输入,程序无法进行。

(同上)

3.乘(I5*l6)

程序中无效数字无法正常输入,程序无法进行。

(同上)

4.除(Ff/se)

程序中无效数字无法正常输入,程序无法进行。

(同上)

5.

(2)边界值法设计测试:

加法:

1、计算器4个标准等价类测试用例的分析过程如下:

测试用例

被加数

加数

预期输出

Test1

0

10

正常运算

Test2

1

10

正常运算

Test3

40

10

正常运算

Test4

55.5

10

正常运算

Test5

-70

10

正常运算

Test6

10

10

正常运算

Test7

101

10

正常运算

Test8

10

0

不能运算

Test9

10

1

正常运算

Test10

10

40

正常运算

Test11

10

55.5

正常运算

Test12

10

-78

正常运算

Test13

10

100

正常运算

Test14

10

101

正常运算

2、对应测试与结果:

测试结果运算均属正常,对应的部分的示图如下:

Test1结果:

Test2结果:

Test3结果:

Test4结果:

Test5结果:

Test6结果:

减法:

1、计算器4个标准等价类测试用例的分析过程如下:

测试用例

被减数

减数

预期输出

Test1

0

10

正常运算

Test2

1

10

正常运算

Test3

40

10

正常运算

Test4

55.5

10

正常运算

Test5

-78

10

正常运算

Test6

100

10

正常运算

Test7

101

10

正常运算

Test8

10

0

不能运算

Test9

10

1

正常运算

Test10

10

40

正常运算

Test11

10

55.5

正常运算

Test12

10

-78

正常运算

Test13

10

100

正常运算

Test14

10

101

正常运算

2、对应测试与结果:

测试结果运算均属正常,对应的部分的示图如下:

Test1结果:

Test3结果:

Test4结果:

Test5结果:

Test6结果:

乘法

1、计算器4个标准等价类测试用例的分析过程如下:

测试用例

被乘数

乘数

预期输出

Test1

0

50

正常运算

Test2

1

5

正常运算

Test3

24

10

正常运算

Test4

55.5

10

正常运算

Test5

-78

10

正常运算

Test6

100

10

正常运算

Test7

101

10

正常运算

Test8

10

0

不能运算

Test9

10

1

正常运算

Test10

10

40

正常运算

Test11

10

55.5

正常运算

Test12

10

-78

正常运算

Test13

10

100

正常运算

Test14

10

101

正常运算

2、对应测试与结果:

测试结果运算均属正常,对应的部分的示图如下:

Test1结果:

Test3结果:

Test4结果:

Test5结果:

Test6结果:

 

除法

1、计算器4个标准等价类测试用例的分析过程如下:

测试用例

被除数

除数

预期输出

Test1

0

10

正常运算

Test2

1

10

正常运算

Test3

40

10

正常运算

Test4

55.5

10

正常运算

Test5

-78

10

正常运算

Test6

100

10

正常运算

Test7

101

10

正常运算

Test8

10

0

正常运算

Test9

10

1

正常运算

Test10

10

40

正常运算

Test11

10

55.5

正常运算

Test12

10

-78

正常运算

Test13

10

100

正常运算

Test14

10

101

正常运算

2、对应测试与结果:

对应的部分的示图如下:

Test1结果:

Test2结果:

Test3结果:

 

Test8结果:

附录:

源代码

CCalculateDlg:

:

CCalculateDlg(CWnd*pParent/*=NULL*/)

:

CDialog(CCalculateDlg:

:

IDD,pParent)

{

//{{AFX_DATA_INIT(CCalculateDlg)

m_parameter=0.0;

//}}AFX_DATA_INIT

//NotethatLoadIcondoesnotrequireasubsequentDestroyIconinWin32

m_hIcon=AfxGetApp()->LoadIcon(IDR_MAINFRAME);

CalculatePara=0;

CalculateResult=0;

Ispoint=false;

Sumpoint=0;

}

voidCCalculateDlg:

:

DoDataExchange(CDataExchange*pDX)

{

CDialog:

:

DoDataExchange(pDX);

//{{AFX_DATA_MAP(CCalculateDlg)

DDX_Text(pDX,IDC_EDIT,m_parameter);

//}}AFX_DATA_MAP

}

BEGIN_MESSAGE_MAP(CCalculateDlg,CDialog)

//{{AFX_MSG_MAP(CCalculateDlg)

ON_WM_SYSCOMMAND()

ON_WM_PAINT()

ON_WM_QUERYDRAGICON()

ON_BN_CLICKED(IDC_clear,Onclear)

ON_BN_CLICKED(IDC_calculate,Oncalculate)

ON_BN_CLICKED(IDC_para1,Onpara1)

ON_BN_CLICKED(IDC_para2,Onpara2)

ON_BN_CLICKED(IDC_para3,Onpara3)

ON_BN_CLICKED(IDC_para4,Onpara4)

ON_BN_CLICKED(IDC_para5,Onpara5)

ON_BN_CLICKED(IDC_para6,Onpara6)

ON_BN_CLICKED(IDC_para7,Onpara7)

ON_BN_CLICKED(IDC_para8,Onpara8)

ON_BN_CLICKED(IDC_para9,Onpara9)

ON_BN_CLICKED(IDC_para0,Onpara0)

ON_BN_CLICKED(IDC_point,Onpoint)

ON_BN_CLICKED(IDC_minus,Onminus)

ON_BN_CLICKED(IDC_plus,Onplus)

ON_BN_CLICKED(IDC_subtrack,Onsubtrack)

ON_BN_CLICKED(IDC_multiply,Onmultiply)

ON_BN_CLICKED(IDC_divide,Ondivide)

//}}AFX_MSG_MAP

END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////

//CCalculateDlgmessagehandlers

BOOLCCalculateDlg:

:

OnInitDialog()

{

CDialog:

:

OnInitDialog();

//Add"About..."menuitemtosystemmenu.

//IDM_ABOUTBOXmustbeinthesystemcommandrange.

ASSERT((IDM_ABOUTBOX&0xFFF0)==IDM_ABOUTBOX);

ASSERT(IDM_ABOUTBOX<0xF000);

CMenu*pSysMenu=GetSystemMenu(FALSE);

if(pSysMenu!

=NULL)

{

CStringstrAboutMenu;

strAboutMenu.LoadString(IDS_ABOUTBOX);

if(!

strAboutMenu.IsEmpty())

{

pSysMenu->AppendMenu(MF_SEPARATOR);

pSysMenu->AppendMenu(MF_STRING,IDM_ABOUTBOX,strAboutMenu);

}

}

//Settheiconforthisdialog.Theframeworkdoesthisautomatically

//whentheapplication'smainwindowisnotadialog

SetIcon(m_hIcon,TRUE);//Setbigicon

SetIcon(m_hIcon,FALSE);//Setsmallicon

//TODO:

Addextrainitializationhere

returnTRUE;//returnTRUEunlessyousetthefocustoacontrol

}

voidCCalculateDlg:

:

OnSysCommand(UINTnID,LPARAMlParam)

{

if((nID&0xFFF0)==IDM_ABOUTBOX)

{

CAboutDlgdlgAbout;

dlgAbout.DoModal();

}

else

{

CDialog:

:

OnSysCommand(nID,lParam);

}

}

//Ifyouaddaminimizebuttontoyourdialog,youwillneedthecodebelow

//todrawtheicon.ForMFCapplicationsusingthedocument/viewmodel,

//thisisautomaticallydoneforyoubytheframework.

voidCCalculateDlg:

:

OnPaint()

{

if(IsIconic())

{

CPaintDCdc(this);//devicecontextforpainting

SendMessage(WM_ICONERASEBKGND,(WPARAM)dc.GetSafeHdc(),0);

//Centericoninclientrectangle

intcxIcon=GetSystemMetrics(SM_CXICON);

intcyIcon=GetSystemMetrics(SM_CYICON);

CRectrect;

GetClientRect(&rect);

intx=(rect.Width()-cxIcon+1)/2;

inty=(rect.Height()-cyIcon+1)/2;

//Drawtheicon

dc.DrawIcon(x,y,m_hIcon);

}

else

{

CDialog:

:

OnPaint();

}

}

//Thesystemcallsthistoobtainthecursortodisplaywhiletheuserdrags

//theminimizedwindow.

HCURSORCCalculateDlg:

:

OnQueryDragIcon()

{

return(HCURSOR)m_hIcon;

}

voidCCalculateDlg:

:

Onclear()

{

UpdateData(true);

m_parameter=0;

CalculatePara=0;

CalculateResult=0;

Ispoint=false;

Sumpoint=0;

UpdateData(false);//TODO:

Addyourcontrolnotificationhandlercodehere

}

voidCCalculateDlg:

:

Oncalculate()

{

UpdateData(true);

CalculatePara=m_parameter;

switch(CalculateExpre)

{

case'+':

CalculateResult+=CalculatePara;

m_parameter=CalculateResult;

break;

case'-':

CalculateResult-=CalculatePara;

m_parameter=CalculateResult;

break;

case'*':

CalculateResult*=CalculatePara;

m_parameter=CalculateResult;

break;

case'/':

if(CalculatePara)

{

CalculateResult/=CalculatePara;

m_parameter=CalculateResult;

}

else

{

m_parameter=0;

MessageBox("除数不能为零!

");

}

break;

}//TODO:

Addyourcontrolnotificationhandlercodehere

CalculatePara=0;

CalculateResult=0;

Ispoint=false;

Sumpoint=0;

UpdateData(false);

}

voidCCalculateDlg:

:

Onpara1()

{

UpdateData(true);

if(!

Ispoint)

{

CalculatePara=m_parameter*10+1;

}

else

{

CalculatePara=m_parameter+1/pow(10,Sumpoint);

Sumpoint++;

}

m_parameter=CalculatePara;

UpdateData(false);//TODO:

Addyourcontrolnotificationhandlercodehere

}

voidCCalculateDlg:

:

Onpara2()

{

UpdateData(true);

if(!

Ispoint)

{

CalculatePara=m_parameter*10+2;

}

else

{

CalculatePara=m_parameter+2/pow(10,Sumpoint);

Sumpoint++;

}

m_parameter=CalculatePara;

UpdateData(false);//TODO:

Addyourcontrolnotificationhandlercodehere

}

voidCCalculateDlg:

:

Onpara3()

{

UpdateData(true);

if(!

Ispoint)

{

CalculatePara=m_parameter*10+3;

}

else

{

CalculatePara=m_parameter+3/pow(10,Sumpoint);

Sumpoint++;

}

m_parameter=CalculatePara;

UpdateData(false);//TODO:

Addyourcontrolnotificationhandlercodehere

}

voidCCalculateDlg:

:

Onpara4()

{

UpdateData(true);

if(!

Ispoint)

{

CalculatePara=m_parameter*10+4;

}

else

{

CalculatePara=m_parameter+4/pow(10,Sumpoint);

Sumpoint++;

}

m_parameter=CalculatePara;

UpdateData(false);//TODO:

Addyourcontrolnotificationhandlercodehere

}

voidCCalculateDlg:

:

Onpara5()

{

UpdateData(true);

if(!

Ispoint)

{

CalculatePara=m_parameter*10+5;

}

else

{

CalculatePara=m_parameter+5/pow(10,Sumpoint);

Sumpoint++;

}

m_parameter=CalculatePara;

UpdateData(false);//TODO:

Addyourcontrolnotificationhandlercodehere

}

voidCCalculateDlg:

:

Onpara6()

{

UpdateData(true);

if(!

Ispoint)

{

CalculatePara=m_parameter*10+6;

}

else

{

CalculatePara=m_parameter+6/pow(10,Sumpoint);

Sumpoint++;

}

m_parameter=CalculatePara;

UpdateData(false);//TODO:

Addyourcontrolnotificationhandlercodehere

}

voidCCalculateDlg:

:

Onpara7()

{

UpdateData(true);

if(!

Ispoint)

{

CalculatePara=m_parameter*10+7;

}

else

{

CalculatePara=m_parameter+7/pow(10,Sumpoint);

Sumpoint++;

}

m_parameter=CalculatePara;

UpdateData(false);//TODO:

Addyourcontrolnotificationhandlercodehere

}

voidCCalculateDlg:

:

Onpara8()

{

UpdateData(true);

if(!

Ispoint)

{

CalculatePara=m_parameter*10+8;

}

else

{

CalculatePara=m_parameter+8/pow(10,Sumpoint);

Sumpoint++;

}

m_parameter=CalculatePara;

UpdateData(false);//TODO:

Addyourcontrolnotificationhandlercodehere

}

voidCCalculateDlg:

:

Onpara9()

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

当前位置:首页 > 解决方案 > 学习计划

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

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