这篇文章很浅显,主要是给初次接触TDD的人作为参考用的。
我只尝试过用过Eclipse、IntelliJ Idea、JBuilder和JCreator进行TDD,常用Eclipse和IntelliJ Idea,JBuilder的JUnit使用和IntelliJ Idea差不多,而JCreator对JUnit的支持很有限(要么就是我没研究明白),所以,我只介绍前两者。
Eclipse 2.1.3
Eclipse对JUnit支持的很好,有创建向导,很方便。
首先,假设已经创建了一个项目,在包资源管理器中在该项目下你希望放置测试的目录或包下单击右键呼出菜单,选择新建-其他,然后在创建对话框中的左侧的树中打开Java,选择JUnit,然后在右侧选择测试案例(另一个是测试套件,我还不会用),下一步,填入测试案例名,一般以Test开头,后面是你要测试的类的名字,还可以有其他信息,然后完成,测试案例就创建了。之后只要添加若干如下方法就可以了:
void testMethodName(){
//add test
}
运行测试时,在包资源管理器中选择要运行的测试案例,然后选择运行-运行为-3. JUnit测试,然后测试就会自动运行。JUnit使用了反射机制,所以,案例中所有的测试都会被执行。运行时和结束后,在工作区的左侧会出现JUnit 窗口,如果没有,请注意一下左侧窗口下方的若干标签,其中应该有JUnit,如果运行成功会显示绿条,失败会显示红条,运行次数就是测试的个数(以测试方法的个数计算的),错误次数显示的是测试数据不符的个数,故障次数是测试程序和被测试的代码异常中止的个数。下面的框中显示了各个测试的信息,最下面的框中显示了错误或者故障的信息和位置。
IntelliJ Idea 4.5
IntelliJ Idea对JUnit的支持非常棒,尽管他没有创建向导,但是他的很多便捷的编程功能很适合TDD开发。
在工程的创建过程中或者在正常创建后选择File-Settings中的Paths,选择第二个标签页Libraries(Classpath),在 Module Librarise右侧选择Add Jar/Directory,然后在IntelliJ的lib目录下找到JUnit.jar,然后一路确定。然后就可以进行测试的编写了。
由于没有向导,所以要手动创建测试案例。像一般创建类一样创建一个用作测试案例的类,然后使其继承TestCase类,可以利用右键菜单里的Generator功能创建一个带一个Stirng参数的构造函数,也可以不创建,然后就和前面一样的编写了。
运行时,选择JUint标签页,第一次需要在左侧创建一个新的测试,只需单击加号就可以了,然后为这个测试起一个名字,之后:可以选择测试包中所有的测试(All in Package),在Test框中选择测试案例所在的包,看情况选择In Whole Project或In Single Module,之后就可以运行测试了;如果前面选择测试一个测试案例(Class),下面一个选择单个案例的地方就会可用,然后选择一个,运行。
我一直使用Idea来进行TDD开发,因为他有很多功能很适合TDD,比如,TDD要求先写测试,而这时测试中的类或者类中的方法、字段等还没有声明和定义,会显示成红色,这时,只要把光标放到这个标识符中,就会在该行的左侧出现一个灯泡,里面会有一个选项自动创建这个还没有的成分,这正好可以快捷的实现 TDD中所说的存根实现。Idea的重构功能也很强大。
这两个IDE还有很多与JUnit有关的功能,我没有使用过所以也不好说,JUnit本身也有多功能,如果能够好好利用,可以提高开发效率。我使用的时间也不长,所以只能谈到这里了。