Unitils模块
配置
和大多数的项目一样,unitils也需要一些配置,默认情况下有3个配置,每个配置都覆写前一个的配置
- unitils-default.properties 默认的配置,在unitils发行包中。
- unitils.properties 可包含项目的全部配置
- unitils-local.properties 可以包含用户特定配置
第一个配置文件unitils-default.properties,它包含了缺省值并被包含在unitils的发行包中。我们没有必要对这个文件进行修改,但它可以用来作参考。
第二个配置文件unitils.properties,它是我们需要进行配置的文件,并且能覆写缺省的配置。举个例子,如果你的项目使用的是oracle数据库,你可以创建一个unitils.properties文件并覆写相应的driver class和database url。
database.driverClassName=oracle.jdbc.driver.OracleDriver
database.url=jdbc:oracle:thin:@yourmachine:1521:YOUR_DB
这个文件并不是必须的,但是一旦你创建了一个,你就需要将该文件放置在项目的classpath下
最后一个文件,unitils-local.properties是可选的配置文件,它可以覆写项目的配置,用来定义开发者的具体设置,举个例子来说,如果每个开发者都使用自己的数据库schema,你就可以创建一个unitils-local.properties为每个用户配置自己的数据库账号、密码和schema。
database.userName=john
database.password=secret
database.schemaNames=test_john
每个unitils-local.properties文件应该放置在对应的用户文件夹中(System.getProperty("user.home"))。
本地文件名unitils-local.properties也可以通过配置文件定义,在unitils.properties覆写unitils.configuration.localFileName就可以。
unitils.configuration.localFileName=projectTwo-local.properties
启用你的unitils
unitils的功能是依赖于基础的测试框架,要使用unitils的功能,就必须先enable他们,这样做的目的也是为了容易扩展。目前支持的框架有:
- JUnit3 :org.unitils.UnitilsJUnit3
- JUnit4 :org.unitils.UnitilsJUnit4
- TestNG:org.unitils.UnitilsTestNG
举个例子,如果使用JUnit3,你要使用unitils
import org.unitils.UnitilsJUnit3;
public class MyTest extends UnitilsJUnit3 {
}
通常你将创建你自己的包含一些公共行为的测试基类,如dataSource的注入,你可以让这个基类继承unitils测试类。
当你使用的是JUnit4的话,你也可是使用@RunWith来代替继承unitils测试类
import org.junit.runner.RunWith;
import org.unitils.UnitilsJUnit4TestClassRunner;
@RunWith(UnitilsJUnit4TestClassRunner.class)
public class MyTest {
}
模块系统
在开始举例之前,让我们先了解一下unitils概念。
unitils的结构被设计成了十分容易扩展,每个模块提供了一种服务,当执行Test的时候通过TestListener调用相应的服务。
这种设计采用了一个统一的方式提供服务,如果你需要加入其他的服务,无需去改编测试基类(UnitilsJUnit4这些类)。要加入新的服务只需要添加一个新的模块并在unitls配置文件中登记这个模块。
目前unitils中所有有效的模块如下:
- DatabaseModule 数据库单元测试的维护和连接池。
- DbUnitModule 使用DBUnit来管理测试数据。
- hibernatemodule 支持Hibernate的配置和自动数据库映射检查。
- EasyMockModule 支持创建mock和宽松的反射参数匹配。
- InjectModule 支持在一个对象中注入另一个对象。
- SpringModule 支持加载spring的上下文配置,并检索和Spring Bean注入。
posted on 2008-04-07 00:45
小小~咖啡豆 阅读(2785)
评论(2) 编辑 收藏 所属分类:
测试