单元测试

 一、概述

  单元测试是针对软件设计的最小单位——程序模块,进行正确性检验的测试工作。其目的在于发现每个程序模块内部可能存在的差错。

  单元测试也是程序员的一项基本职责,程序员必须对自己所编写的代码保持认真负责的态度,这是也程序员的基本职业素质之一。同时单元测试能力也是程序员的一项基本能力,能力的高低直接影响到程序员的工作效率与软件的质量。

  在编码的过程中作单元测试,其花费是最小的,而回报却特别优厚的。在编码的过程中考虑测试问题,得到的将是更优质的代码,因为在这时您对代码应该做些什么 了解得最清楚。如果不这样做,而是一直等到某个模块崩溃了,到那时您可能已经忘记了代码是怎样工作的。即使是在强大的工作压力下,您也还必须重新把它弄清 楚,这又要花费许多时间。进一步说,这样做出的更正往往不会那么彻底,可能更脆弱,因为您唤回的理解可能不那么完全。

  通常合格的代码应该具备以下性质:正确性、清晰性、规范性、一致性、高效性等(根据优先级别排序)。

  1. 正确性是指代码逻辑必须正确,能够实现预期的功能。

  2. 清晰性是指代码必须简明、易懂,注释准确没有歧义。

  3. 规范性是指代码必须符合企业或部门所定义的共同规范包括命名规则,代码风格等等。

  4. 一致性是指代码必须在命名上(如:相同功能的变量尽量采用相同的标示符)、风格上都保持统一。

  5. 高效性是指代码不但要满足以上性质,而且需要尽可能降低代码的执行时间。

  二、 单元测试步骤

  在代码编写完成后的单元测试工作主要分为两个步骤人工静态检查和动态执行跟踪。

  人工静态检查是测试的第一步,这个阶段工作主要是保证代码算法的逻辑正确性(尽量通过人工检查发现代码的逻辑错误)、清晰性、规范性、一致性、算法高效性。并尽可能的发现程序中没有发现的错误。

  第二步是通过设计测试用例,执行待测程序来跟踪比较实际结果与预期结果来发现错误。经验表明,使用人工静态检查法能够有效的发现30%到70%的逻辑设计 和编码错误。但是代码中仍会有大量的隐性错误无法通过视觉检查发现,必须通过跟踪调试法细心分析才能够捕捉到。所以,动态跟踪调试方法也成了单元测试的重 点与难点。

三、单元测试实际操作

首先创建一个Java工程,在工程中创建一个被单元测试的Example1类

package a;

public class compare {
public int max(int a,int b){
int z =a>b?a:b;
System.out.println(z);
return z;
}

}

1.导入Juint包

2.新建一个Juint测试类 ,在包名上右击,new->Junit test case

3.编写Juint测试类代码,运行run as ->JUnit Test

如图

测试错误结果如下

 

posted on 2016-09-11 10:58  纳海听风  阅读(242)  评论(0)    收藏  举报

导航