zoukankan      html  css  js  c++  java
  • 单元测试初试

           听说下节课要带电脑啊,啊/吃惊,民哥太别出心裁了吧,“到时候一教室的电脑肯定特别壮观”,“永哥的电脑就能坚持十分钟,那他怎么办”,“我代码写的不好,到时候肯定丢死人了”,就在大家七嘴八舌,议论纷纷的时候,我们终于迎来了《软件工程》。

           一上课民哥就给了我们一粒定心丸,“我让你们写的程序特别简单,就比‘hello word’难一点,而且代码我也给你们”,哦,这样我们就安心多了。嘻嘻,这节课我们主要学的是单元测试,而且是现场测试,查找List[]的最大值。

    民哥给的代码是这样的:

    int Largest(int list[], int length)
    {
        int i,max;
        for(i = 0; i < (length – 1); i ++ )
        {
              if(list[i] > max) 
              {
                 max=list[i];
              }
         }
         return max;
    }

    测试过后的结果为:

    最大值竟然是3,返回去看源程序,原来i的长度定小了,并且max没有赋初值,修改后的程序为:

    int Largest(int List[],int length)
    {
    int i,max=List[0];
    if ( List == NULL|| length == 0)
          {
           return 0;
           }
            for(i=0;i<length;i++)
            {
              if(List[i]>max)
               {
                max=List[i];
                }
             }
             return max;
    }

    结果为:

    但在限时调程序的过程中,民哥一直强调如果输入的不是整数怎么办如果输入中有0怎么办,如果数组为空怎么办,课后我就修改了一下代码:

    int Largest(int list[],int length)
        {
            int i,max=0;
            if(list!=null&&length>0)
            {
                max=list[0];
                for(i=0;i<length;i++)
                {
                    if(list[i]>max)
                    {
                        max=list[i];    
                    }
                }
            }
            else
            {
               printf("数组为空!");
            }
            return max;
        }

    这样就好多了,通过这节课我知道了什么是单元测试:单元测试是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。使用单元测试这个简单有效的技术就是为了令代码变得更加完美。这个我是真真的体会到了,把原来存在错误的代码变得现在这么完美,单元测试真的很重要!在以后写代码的时候要多用单元测试每个模块,养成这样的好习惯,以后代码才会变得简单易懂。

  • 相关阅读:
    Web用户的身份验证及WebApi权限验证流程的设计和实现
    开源工作流引擎CCFlow 学习专区
    Jquery Ajax方法传值到action
    再谈Jquery Ajax方法传递到action
    Windows下安装GTK+
    Tex使用
    配置Texmaker中文支持
    软件推荐列表(Recommand Software)
    CAD操作
    Package inputenc Error: Unicode char u8: not set up for use with LaTeX.
  • 原文地址:https://www.cnblogs.com/xinshang/p/3590801.html
Copyright © 2011-2022 走看看