简单的Unit Test理解

Unit Test是门技术,更确切的说是一个很好的工具。基本技术就是使用Composite的设计模式,一个Test接口,一个实现具体测试方法的TestCase类以及一个用来启动或者说管理很多不同TestCase的TestSuite类(suite就是套件,有一个或很多case(用例)组成)。这个设计模式的一个特点就是实现Test的方法的类应该是没有多大顺序上的关系的,也就是可以是离散性的,这也就很符合单元测试的一个测试用例一对setUp和tearDown方法(Per method 的setup和tearDown)。

当然,也有例外的情况,那就是,有些测试的确启动一次的资源就可以了,也就是共享资源(比如网络、数据库等链接),所以就要Per suite 的setup和tearDown。这里就需要为Suite进行一次包装,使用的对象是TestSetup,代码如下:

suite=new TestSuite(fooTestCase.class);
         TestSetup setup=new TestSetup(suite){
              protected void setUp(){
                        oneTimeToSetup();
                 }
              protected void tearDown(){
                         oneTimeToTearDown();
                }
           };  
           return setup;
}
 附件是一本较好的单元测试书籍,单元测试之道java版

你可能感兴趣的:(java UnitTest)