(转)用JUnit4进行单元测试

测试在软件生命周期中的重要性,不用我多说想必大家也都非常清楚。软件测试有很多分类,从测试的方法上可分为:黑盒测试、白盒测试、静态测试、动态测试等;从软件开发的过程分为:单元测试、集成测试、确认测试、验收、回归等。

在众多的分类中,与开发人员关系最紧密的莫过于单元测试了。像其他种类的测试基本上都是由专门的测试人员来完成,只有单元测试是完全由开发人员来完成的。那么今天我们就来说说什么是单元测试,为什么要进行单元测试,以及如更好的何进行单元测试。

什么是单元测试?

单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。比如我们可以测试一个类,或者一个类中的一个方法。

为什么要进行单元测试?

为什么要进行单元测试?说白了就是单元测试有什么好处,其实测试的好处无非就是减少bug、提高代码质量、使代码易于维护等。单元测试有什么好处请看一下百度百科中归纳的四条:

1、它是一种验证行为。
程序中的每一项功能都是测试来验证它的正确性。它为以后的开发提供支援。就算是开发后期,我们也可以轻松的增加功能或更改程序结构,而不用担心这个过程中会破坏重要的东西。而且它为代码的重构提供了保障。这样,我们就可以更自由的对程序进行改进。

2、它是一种设计行为。
编写单元测试将使我们从调用者观察、思考。特别是先写测试(test-first),迫使我们把程序设计成易于调用和可测试的,即迫使我们解除软件中的耦合。

3、它是一种编写文档的行为。
单元测试是一种无价的文档,它是展示函数或类如何使用的最佳文档。这份文档是可编译、可运行的,并且它保持最新,永远与代码同步。

4、它具有回归性。
自动化的单元测试避免了代码出现回归,编写完成之后,可以随时随地的快速运行测试。

如何更好的进行单元测试?

在讨论如何更好的进行单元测试之前,先来看看我们以前是怎么测试代码的。

以前是这样测试程序的:

public int add(int x,int y) {
        return x + y;
    }

    public static void main(String args[]) {
        int z = new Junit().add(2, 3);
        System.out.println(z);
    }
时间: 2024-10-19 01:23:43

(转)用JUnit4进行单元测试的相关文章

Junit(1)在Eclipse中使用JUnit4进行单元测试

我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这 一小部分功能是正确的.但是,我们同时应该确保每一个函数都完全正确,因为如果我们今后如果对程序进行扩展,用到了某个函数的其他功能,而这个功能有bug的话,那绝对是一件非常郁闷的事情.所以说,每编写完一个函数之后,都应该对这个函数的方方面面进行测试,这样的测试我们称之为单元测试. 传统的编程方式,进行单元测试是一件很麻烦的事情,你要重新写另外一个程序,在

在Eclipse中使用JUnit4进行单元测试(初级篇)

转载自:http://blog.csdn.net/andycpp/article/details/1327147/ 我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这一小部分功能是正确的.但是,我们同时应该确保每一个函数都完全正确,因为如果我们今后如果对程序进行扩展,用到了某个函数的其他功能,而这个功能有bug的话,那绝对是一件非常郁闷的事情.所以说,每编写完一个函数之后,都应该对这个函数的方方面面进

在Eclipse中使用JUnit4进行单元测试(中级篇)【转】

我们继续对初级篇中的例子进行分析.初级篇中我们使用Eclipse自动生成了一个测试框架,在这篇文章中,我们来仔细分析一下这个测试框架中的每一个细节,知其然更要知其所以然,才能更加熟练地应用JUnit4. 一.     包含必要地Package 在测试类中用到了JUnit4框架,自然要把相应地Package包含进来.最主要地一个Package就是org.junit.*.把它包含进来之后,绝大部分功能就有了.还有一句话也非常地重要“import static org.junit.Assert.*;”

(转)在Eclipse中使用JUnit4进行单元测试

原地址:http://blog.csdn.net/andycpp/article/details/1327147 (转)在Eclipse中使用JUnit4进行单元测试,布布扣,bubuko.com

在Eclipse中使用JUnit4进行单元测试(高级篇)【转】

通过前 2 篇文章,您一定对 JUnit 有了一个基本的了解,下面我们来探讨一下JUnit4 中一些高级特性. 一.     高级 Fixture 上一篇文章中我们介绍了两个 Fixture 标注,分别是 @Before 和 @After ,我们来看看他们是否适合完成如下功能:有一个类是负责对大文件(超过 500 兆)进行读写,他的每一个方法都是对文件进行操作.换句话说,在调用每一个方法之前,我们都要打开一个大文件并读入文件内容,这绝对是一个非常耗费时间的操作.如果我们使用 @Before 和 

【Java】在Eclipse中使用JUnit4进行单元测试(初级篇)

本文绝大部分内容引自这篇文章: http://www.devx.com/Java/Article/31983/0/page/1 我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这一小部分功能是正确的.但是,我们同时应该确保每一个函数都完全正确,因为如果我们今后如果对程序进行扩展,用到了某个函数的其他功能,而这个功能有bug的话,那绝对是一件非常郁闷的事情.所以说,每编写完一个函数之后,都应该对这个函数

在Eclipse中使用JUnit4进行单元测试(初级篇)【转】

来自[http://blog.csdn.net/andycpp/article/details/1327147] 本文绝大部分内容引自这篇文章: http://www.devx.com/Java/Article/31983/0/page/1 我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这一小部分功能是正确的.但是,我们同时应该确保每一个函数都完全正确,因为如果我们今后如果对程序进行扩展,用到了某个

[JAVA]在Eclipse中使用JUnit4进行单元测试-1

我们在编写大型程序的时候,需要写成千上万个方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这一小部分功能是正确的.但是,我们同时应该确保每一个函数都完全正确,因为如果我们今后如果对程序进行扩展,用到了某个函数的其他功能,而这个功能有bug的话,那绝对是一件非常郁闷的事情.所以说,每编写完一个函数之后,都应该对这个函数的方方面面进行测试,这样的测试我们称之为单元测试.传统的编程方式,进行单元测试是一件很麻烦的事情,你要重新写另外一个程序,在该程

在Eclipse中使用JUnit4进行单元测试(图文教程一)

在Eclipse中使用JUnit4进行单元测试 单元测试,JUnit4. 这两个有什么关系呢?这就好比(草)单元测试和(割草机).用这个JUnit4工具去辅助我们进行测试.其实不理解这个也没关系,听多了见多了用多了,自然而然地就会懂了. 有人可能会想,那我直接自己编写个测试的方法不就可以了.例如写个System.out.print输出,看看是否与我们预期的相等.Bingo!这样也是可以的.但是你有割草机不用,那效果也是很Duang的. 开始我也觉得没有必要使用割草机(JUnit)的,但是我了解了

Sping MVC 整合Junit4进行单元测试及常见错误解决

1.Sping整合Junit4进行单元测试:使用spring-test和Junit4进行单元测试 (1)maven依赖:添加spring-test和Junit4 jar包对于jdk1.7版本,spring4版本,依赖如下: <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scop