• PIE结对项目编程


    一、题目描述    

       

          构造程序并测试,分别是:

        1.不能触发Fault。
        2.触发Fault,但是不能触发Error。
        3.触发Error,但是不能产生Failure。

     

    二、结对对象

                结对对象博客:

                结对照片:

                贡献比例:

    三、构造程序并测试

    1.不能触发Fault.

           

             1.1:构造例子:判断一个数是不是正数还是负数,是正数返回,否则返回-1.   

     1 #include<stdio.h>
     2 int signNumber(int i);
     3 int main(){
     4     int a,flag;
     5     printf("please input:");
     6     scanf("%d",&a);
     7     flag=signNumber(a);
     8     if(flag==1){
     9         printf("你输入的是正数\n");
    10     }else{
    11         printf("你输入的是负数\n");
    12     }
    13     return 0;
    14 }
    15 
    16 int signNumber(int i){
    17     if(i>0){
    18        return 1;  //正数返回1,否则返回-1
    19     }
    20     return -1;
    21 }

            1.2:分析:程序在第20行存在fault,没考虑输入数据为0的情况

            1.3:测试

                      

            1.4:结果:存在fault但没触发.

    2.触发Falut,但是不能触发Error.

         

             2.1:构造例子:输入三个数,求其中最大值与最小值之和。

     1 #include<stdio.h>
     2 int main(){
     3     int a[4];
     4     int max,min;
     5     scanf("%d,%d,%d",&a[0],&a[1],&a[2]);
     6     max=min=a[0];
     7     for(int i=1;i<3;i++){
     8         if(a[i]>=max){
     9             max=a[i];
    10         }
    11         if(a[i]>=min){
    12             min=a[i];
    13         }
    14     }
    15     
    16      int sum=max+min;
    17      
    18      printf("%d",sum);
    19 }

            2.2:分析:代码11行有fault,求最大值变成了求最小值

            2.3:测试:input:2,2,2

                         max=2,min=2;

             2.4:  结果:触发了fault,但没触发Error.

    3.触发Error,但是不能产生Failure。

            3.1:构造例子:输入三个数,求其中最大值与最小值之和。

         

     1 #include<stdio.h>
     2 int main(){
     3     int a[4];
     4     int max,min;
     5     scanf("%d,%d,%d",&a[0],&a[1],&a[2]);
     6     max=min=a[0];
     7     for(int i=0;i<3;i++){
     8         if(a[i]<max){
     9             max=a[i];
    10         }
    11         if(a[i]>min){
    12             min=a[i];
    13         }
    14     }
    15     
    16      int sum=max+min;
    17 
    18      printf("%d",sum);
    19 }

         3.2:分析:最大值和最小值求反了。

        

         3.3:input:1,2,3

                  max=1,min=3; error

                  output:sum=4;

         3.4:触发了Error,但没触发failure

    三、总结

          在这次结对编程中,发现与同学的配合更加默契,编程序的时候更加高效,考虑更全面,同时明白了fault,error,failure在软件测试方面的意义。

  • 相关阅读:
    采用[ICONIX] 方法实践BLOG设计之一 [问题域建模]
    关于“三国众谋士”之IT从业可行性报告
    采用[ICONIX] 方法实践BLOG设计之二 [用例建模]
    NET框架中的 Decorator 和 Strategy 模式
    域模型向左走(充血),向右走(贫血)
    采用[ICONIX] 方法实践BLOG设计之五 [初步设计复核]
    Discuz!NT 缓存设计简析 [原创]
    Discuz!NT控件剖析 之 Tab 属性页 [原创: 附源码]
    没有银弹,但可以"扯蛋"
    Discuz!NT控件剖析 之 Button [原创: 附源码]
  • 原文地址:https://www.cnblogs.com/cxyc/p/5384782.html
Copyright © 2020-2023  润新知