码迷,mamicode.com
首页 > 其他好文 > 详细

BICEP单元测试计划-四则运算-测试

时间:2015-03-16 17:45:21      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:

一、6个值得测试的具体部位,他们能够提高你的测试技巧

  • Right-结果是否正确?
  • B-是否所有的边界条件都是正确的?
  • I-能查一下反向关联吗?
  • C-能用其他手段交叉检查一下结果吗?
  • E-你是否可以强制错误条件发生?
  • P-是否满足性能要求

二、测试模块

  测试在出现乘除法和加减法的过程中,是否会出现不符合运算规则的数据,比如出现除数为0的状况,判断程序运行数据的在其他模块中,在本模块的测试中,使用的数据为其他模块中确定好的数据范围(0-1000),并在测试过程中,强制出现除数为0 的错误条件,并使被减数大于减数,被除数大于除数,测试差出现负数以及商出现假分数是否正确

三、测试计划

  R、通过输入代表性数据测试该模块运行结果是否正确

  B、引用了外部条件,随机数生成划定范围,可以避免出现原始数据不在范围内的情况

  I、通过对生成结果数据的检查判断是否对原始数据进行了处理

  C、通过修改程序参数满足测试需求,检查结果

  E、通过强制发生错误条件,测试该模块会出现什么样的结果

  P、更改判断条件,检查结果是否满足要求

四、测试代码

 

 1 // 测试.cpp : Defines the entry point for the console application.
 2 //
 3 /*有乘除法,对加减有负数模块进行测试*/
 4 #include "stdafx.h"
 5 #include"stdlib.h"
 6 #include"iomanip.h"
 7 #include"iostream.h"
 8 #include"string"
 9 using namespace std;
10 
11 int main()
12 {
13     int a,b,c,d;
14     string judge1="Y";
15     string judge2="Y";
16     cout<<"允许加减结果出现负数,允许乘除法出现结果是假分数"<<endl;
17     cout<<"请随机输入两个数:空格键隔开"<<endl;
18     cin>>a>>b;
19     cout<<"请输入要测试的运算( 0:加法 1:减法 2:乘法 3:除法)"<<endl;
20     cin>>c;
21     /*设置右对齐*/
22     cout.flags(ios::right);
23     if((judge1=="Y"||judge1=="y"))                            //允许假分数
24     {
25         switch(c)                                            //随机产生运算符
26         {
27         case 0:
28             cout<<setw(4)<<a<<+<<b<<=;
29             break;
30         case 1:
31             if(judge2=="Y"||judge2=="y")                    //允许负数结果出现
32             {
33                 cout<<setw(4)<<a<<-<<b<<=;
34             }
35             else
36             {
37                 if(a>=b)
38                      cout<<setw(4)<<a<<-<<b<<=;
39                 else
40                     cout<<setw(4)<<b<<-<<a<<=;
41             }
42             break;
43         case 2:
44             cout<<setw(4)<<a<<*<<b<<=;
45             break;
46         case 3:                                                //判断生成除法的条件,除数不能为零
47             if(a!=0&&b==0)
48                 cout<<setw(4)<<b<</<<a<<=;
49             else if(a==0&&b!=0)
50                 cout<<setw(4)<<a<</<<b<<=;
51             else if(a==0&&b==0)
52                 cout<<setw(4)<<a<</<<b+1<<=;
53             else
54                 cout<<setw(4)<<a<</<<b<<=;
55             break;
56         }
57     
58     }
59     else                                            //不允许假分数出现
60     {
61         switch(c)
62         {
63         case 0:
64             cout<<setw(4)<<a<<+<<b<<=;
65             break;
66         case 1:
67             if(judge2=="Y"||judge2=="y")                    //允许负数结果出现
68             {
69                 cout<<setw(4)<<a<<-<<b<<=;
70             }
71             else
72             {
73                 if(a>=b)
74                      cout<<setw(4)<<a<<-<<b<<=;
75                 else
76                     cout<<setw(4)<<b<<-<<a<<=;
77             }
78             break;
79         case 2:
80             cout<<setw(4)<<a<<*<<b<<=;
81             break;
82         case 3:                             //真分数判断
83             if(a<=b&&b!=0)
84                 cout<<setw(4)<<a<</<<b<<=;
85             else 
86                 cout<<setw(4)<<b<</<<a<<=;
87             break;
88         }
89     }
90     cout<<endl;
91     cout<<"是否继续 是(1)否(0)"<<endl;
92     cin>>d;
93     if(d==1)
94         main();
95     else
96         return 0;
97 }

五、测试结果


加法测试结果

技术分享

减法测试结果

技术分享

乘法测试结果

技术分享

除法测试结果

技术分享

六、测试结果分析

  在程序编写过程中,每个模块要有相应的测试模块,才能避免整个程序完成后,发生出现问题很难找到或者找不到出现错误的地方,另外,编写测试模块,可以帮助完善整个程序,是一种很好的编程习惯

BICEP单元测试计划-四则运算-测试

标签:

原文地址:http://www.cnblogs.com/zhshto/p/4342353.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!