单元测试

单元测试是保证软件质量的一种必须的测试,大小软件都应该进行单元测试,因此,必须进行单元测试,现在大的公司都要求进行单元测试,CMMI也要求进行单元测试。作为一个程序员,如果你说你不了解单元测试,不会编写单元测试用例,会很惭愧的,呵呵。

步骤一:Eclipse中配置junit

Eclipse中配置Junit的方法有两种方式:

第一种方法:

1、下载junitjar包,目前它的版本是junit3.8.1,可以从www.junit.org上下载。

2、在要使用Junitproject名上,点击properties--java build path-libraries, 点击Add External JARs,Junit包点上就行了。如图所示,点击Add External JARs,选择相应的Junit



 

 

第二种方法:

1、在要使用Junitproject名上,点击properties--java build path-libraries, 点击Add library,选择JunitT即可。如图1所示,在图1中点击Add library,在弹出的对话框中选择Jnuit,如图3所示,接下来选择junit版本即可。

 



 

第一种方法、(工程和测试在同一工程中)

1Eclpise中新建工程junittest

参考附件中的junittest-1.rar。其中定义了需要单元测试的类:com.cvicse.test.junit. JunitTest

简单的步骤:

1、建一个project工程,工程名字为junittest

2、建立一个包,名字为com.cvicse.test.junit

、建立一个类JunitTest,其内容如下:

 

package com.cvicse.test.junit; public class JunitTest { public boolean method1(int comp){ //do something if(comp>5){ //do something return false; }else{ //do something return true; } }

 

 

 

 

 

2)建立类junittestjunit

选择要单元测试的类junittest,点击右健,选择”new”---“other”---“java”—“junit”—“junit test case”

1、选择第一个对话框中的属性,一般需要选择setup复选框和teardown

Setup函数用于测试的初始化,而teardown用于测试的销毁,前者相当于c++中的构造函数和析构函数。

2进入第二个对话框,选择需要测试的类方法,一般只是选择被测试类本身的方法,



 

上图中的junittest中的method1就是被测试类的实现方法。

 

3、点击finish,自动生成该类的测试类JunitTestTest

4、生成的代码如下所示。

package com.cvicse.test.junit; import junit.framework.TestCase; public class JunitTestTest extends TestCase { protected void setUp() throws Exception { } protected void tearDown() throws Exception { } public void testMethod1() { fail("Not yet implemented" ); } }

 

 

 

  

 

第二种工程(建立与源码分离的工程)

建立与源码工程分离的test工程(测试代码与源码分离)

一般情况,按照“建立类的junit类”的方法建立的测试单元,一般与源码工程在同样的包中,混杂在一起,需要将其分离。

分离步骤:

1、  在工程名下新建立“source folder”,命名为test,拷贝/src/*.*/test下,并删除非testcase

2、  在源码/src中建立testcase类,然后移动到/test对应的目录下,

3、  执行如果出现错误:”test type does not exist”,则需要将/test目录添加工程的source属性中:工程右健—“properties”—“java build path”—“source”—“add folder”—选择/test

4、  如果需要的配置文件在web-inf下,则需要拷贝到src目录下。

建立测试后的工程

建立单元测试的工程如:junitTest-2.rar

覆盖率测试和报告

目前覆盖率测试一般用jcoverage或者cobertura工具。

使用cobertura测试的配置文件为:cobertura/build.xml,为ant脚本。

工程参考:junitTest-3.rar

下面对cobertura进行详细的介绍:

1、  利用cobertura可以自动产生单元测试的报告,该报告可以反映出单元测试的一个标准。它能反映代码的覆盖率和分支的覆盖率。在CMMI中关于测试报告的要求还是非常重要的,cobertura文件夹放到工程中的下面即可以,关键是配置buid.xml

具体做法,请看TestForJunit工程。

2、  将该工程导入到eclipse下。

3、  点击cobertura文件夹下的buid.xml

4、  选中buid.xml,点击右键,选择run中的1 ant,就会自动产生报告。

5、  其中cobertura中的classesinstrumentreports都是编译产生的


 
 注意:

 setUp与tearDown 这两个函数是junit framework中提供初始化和反初始化每个测试方法的。setUp在每个测试方法调用前被调用,负责初始化测试方法所需要的测试环境;tearDown在每个测试方法被调用之后被调用,负责撤销测试环境。它们与测试方法的关系可以描述如下:

 

    测试开始 -> setUp -> testXXXX -> tearDown ->测试结束

 

 

你可能感兴趣的:(eclipse,ant,软件测试,单元测试,JUnit)