JbuilderX使用Junit学习笔记

时间:2021-03-04 05:10:00

JbuilderX使用Junit学习笔记

 

1.简介


    大家提供一个稍微正式一些的编写JUnit测试文档的手册,明白其中的一些关键术语和概念。但我要声明的是这并不是一本完全的手册,只能认为是一本入门手册。同其他OpenSource的软件有同样的问题,JUnit的文档并没有商业软件文档的那种有规则,简洁和完全。由开发人员编写的文档总是说不太清楚问题,全整的文档需要参考"官方"指南,API手册,邮件讨论组的邮件,甚至包括源代码中及相关的注释。事实上问题并没有那么复杂,除非你有非常特别的要求,否则,只需参考本文你就可以得到所需的大部分信息。

2.安装

 

JBuilderX中集成JUnit,不用配置ClassPath,就可以使用JUnit,非JBuilderX下的配置,就不在这里敖述了。

3.固定流程

 

JUnit定义了一个固定的格式建立一个测试用例:

1. implement 一个TestCase的子类。

2. 定义储存状态的公用实例变量。

3. 通过overriding setUp 来初始化公用变量。

4. 通过overriding tearDown在测试后清除初始化。

5. 创建testXXXXX()的测试方法。

6. 一旦你创建了一些测试实例,为了让他们能一起运行。必须定义一个TestSuite

通过这样一个框架,可以很容易开发出相应地测试类。

 

4.编写测试用例TestCase

JUnit提供了两个方法,定义在TestCase类中。 protected void setUp() throws java.lang.Exception protected void tearDown() throws java.lang.Exception

覆盖setUp()方法,初始化所有测试的Fixture(你甚至可以在setUp中建立网络连接),将每个测试略有不同的地方在testXXX ()方法中进行配置。

覆盖tearDown(),释放你在setUp()中分配的永久性资源,如数据库连接。

JUnit执行测试时,它在执行每个testXXX ()方法前都调用setUp(),而在执行每个test testXXX ()方法后都调用tearDown()方法,由此保证了测试不会相互影响。

  

需要提醒一下,在junit.framework.Assert类中定义了相当多的assert方法,主要有assert(), assert(), assertEquals(), assertNull(), assertSame(), assertTrue(), fail()等方法。如果你需要比较自己定义的类,如Carassert方法需要你覆盖Object类的equals()方法,以比较两个对象的不同。实践表明:如果你覆盖了Object类的equals()方法,最好也覆盖Object类的hashCode()方法。再进一步,连带Object类的toString()方法也一并覆盖。这样可以使测试结果更具可读性。

一定要保证testXXX ()方法的public属性,否则无法通过内省(reflection)对该测试进行调用。

 

5.编写集合测试TestSuit

TestCase类中定义一个静态的suite()方法。suite()方法就像main()方法一样,JUnit用它来执行测试。在suite()方法中,你将测试实例加到一个TestSuite对象中,并返回这个TestSuite对象。一个TestSuite对象可以运行一组测试。TestSuiteTestCase都实现了Test接口(interface),而Test接口定义了运行测试所需的方法。这就允许你用TestCaseTestSuite的组合创建一个TestSuite

 

JUnit提供了三种界面来运行测试 

[Text  UI] junit.textui.TestRunner

[AWT   UI] junit.awtui.TestRunner

[Swing UI] junit.swingui.TestRunner

 

JBuilderX下运行单元测试:

1 建立一个工程,并添加一个类,例如JUnitStudy.java

2 选择Project|Rebuild Project JunitStudy.jpx”命令,编译工程,这样做可以使工程中的类文件在Test Case向导中可见。

3 在工程窗口双击JunitStudy.java文件在代码窗口打开。

4 Object Gallery对话框中选择Test选项卡,从Test选项卡中选中Test Case图标,然后单击OK按钮,这样JunitStudy.java文件将被作为被测试的类显示在Test Case向导中。

5 Test Case向导中选中一个方法。单击Finish按钮,这样一个新的test caseTest TestJunitStudy.java文件就会在代码窗口被打开。

6.添加相应的代码后单击主工具栏中的保存钮,保存工程。

7.在工程窗口右击TestJunitStudy.java文件并从弹出的快捷菜单选择Run Test using TestJunitStudy命令开始运行这个测试类,开发人员可以在消息窗口看到它的运行情况。

8 如果运行进度显示是红色,表示这个类有错误发生。

<<――创建一个test suit->>

9 TestJunitStudy.java中增加一个新的测试方法,并保存

10.选择File|New 命令,弹出Object Gallery对话框。从中选择Test Suit图标,然后单击ok按钮,弹出Test Suit向导。

11.在向导中选中TestJunitStudy作为一个包含在TestSuittest case

12.单击Next,修改ClassnameAllTests.java

13.然后单击Finish,这样AllTests.java就被添加到开发人员的工程中。

14.在工程窗口中右击AllTests.java文件并从弹出的快捷菜单中选择Run Test using AllTests命令开始运行测试类。

 

参考文献:

1.应用Junit实施单元测试(原创作者:eric 

2Junit实施 Java开发者http://www.neweasier.com/

3Junit学习笔记(竹笋炒肉)

4JBuilder基础教程(清华大学)