1西南科技大学计算机学院实验报告实验名称计算器黑盒测试实验地点实验日期指导教师学生班级学生姓名学生学号提交日期软件教研室制2一、测试目的设计测试用例、使用各种测试方法进行计算器的测试,并对测试结果进行分析二、测试内容1.软件说明:实现一个小的计算器程序,只需要完成加、减、乘、除运算,设计测试用例,并对测试结果进行分析,同时计算器运行稳定。2、设计测试用例3、执行测试4、测试结果分析5、源代码三、测试步骤(一)、计算器界面2、设计测试用例(1)等价类测试:1、4个等价类测试用例的分析过程如下:测试用例加减乘除预期输出3整型55+5078-2415*2536/4正常运算小数25.3+12.714.3-11.725.6*12.850.2/20.7正常运算负数-20+-21(-15)-(-14)-12*-12-16/-5正常运算无效输入E1+t2G4-k5I5*l6Ff/se非法操作无法输入2、对应测试的结果分析:整型:1.加(55+50)2.减(78-24)3.乘(15*25)4.除(36/4)4小数1.加(25.3+12.7)2.减(14.3-11.7)3.乘(25.6*12.8)4.除(50.2/20.7)负数6.加-20+-2157.减(-15)-(-14)8.乘-12*-129.除-16/-5(其中算式写法错误导致正常运算错误)无效输入1.加(E1+t2):程序中无效数字无法正常输入,程序无法进行。2.减(G4-k5)程序中无效数字无法正常输入,程序无法进行。(同上)3.乘(I5*l6)程序中无效数字无法正常输入,程序无法进行。(同上)4.除(Ff/se)程序中无效数字无法正常输入,程序无法进行。(同上)65.(2)边界值法设计测试:加法:1、计算器4个标准等价类测试用例的分析过程如下:测试用例被加数加数预期输出Test1010正常运算Test2110正常运算Test34010正常运算Test455.510正常运算Test5-7010正常运算Test61010正常运算Test710110正常运算Test8100不能运算Test9101正常运算Test101040正常运算Test111055.5正常运算Test1210-78正常运算Test1310100正常运算7Test1410101正常运算2、对应测试与结果:测试结果运算均属正常,对应的部分的示图如下:Test1结果:Test2结果:Test3结果:Test4结果:Test5结果:8Test6结果:减法:1、计算器4个标准等价类测试用例的分析过程如下:测试用例被减数减数预期输出Test1010正常运算Test2110正常运算Test34010正常运算Test455.510正常运算Test5-7810正常运算Test610010正常运算Test710110正常运算Test8100不能运算Test9101正常运算Test101040正常运算Test111055.5正常运算Test1210-78正常运算Test1310100正常运算9Test1410101正常运算2、对应测试与结果:测试结果运算均属正常,对应的部分的示图如下:Test1结果:Test3结果:Test4结果:Test5结果:Test6结果:10乘法1、计算器4个标准等价类测试用例的分析过程如下:测试用例被乘数乘数预期输出Test1050正常运算Test215正常运算Test32410正常运算Test455.510正常运算Test5-7810正常运算Test610010正常运算Test710110正常运算Test8100不能运算Test9101正常运算Test101040正常运算Test111055.5正常运算Test1210-78正常运算Test1310100正常运算Test1410101正常运算2、对应测试与结果:测试结果运算均属正常,对应的部分的示图如下:Test1结果:11Test3结果:Test4结果:Test5结果:Test6结果:除法1、计算器4个标准等价类测试用例的分析过程如下:测试用例被除数除数预期输出12Test1010正常运算Test2110正常运算Test34010正常运算Test455.510正常运算Test5-7810正常运算Test610010正常运算Test710110正常运算Test8100正常运算Test9101正常运算Test101040正常运算Test111055.5正常运算Test1210-78正常运算Test1310100正常运算Test1410101正常运算2、对应测试与结果:对应的部分的示图如下:Test1结果:Test2结果:13Test3结果:Test8结果:附录:源代码CCalculateDlg::CCalculateDlg(CWnd*pParent/*=NULL*/):CDialog(CCalculateDlg::IDD,pParent){//{{AFX_DATA_INIT(CCalculateDlg)m_parameter=0.0;//}}AFX_DATA_INIT//NotethatLoadIcondoesnotrequireasubsequentDestroyIconinWin32m_hIcon=AfxGetApp()->LoadIcon(IDR_MAINFRAME);CalculatePara=0;CalculateResult=0;Ispoint=false;Sumpoint=0;}voidCCalculateDlg::DoDataExchange(CDataExchange*pDX)...