Unitils-Spring测试总体流程

一、在工程中配置Unitils测试环境

1.unitils-local.properties

####################################

# Default configuration of Unitils #

####################################

unitils.module.spring.className=org.unitils.spring.SpringModule

unitils.module.spring.runAfter=database

unitils.module.spring.enabled=true

 

database.userName=sa

database.password=

database.schemaNames=public

 

2.unitils.properties

 

unitils.modules=database,dbunit,hibernate,spring,

#unitils.module.dbunit.className=sample.unitils.module.CustomExtModule

 

#database

database.driverClassName=org.hsqldb.jdbcDriver

database.url=jdbc:hsqldb:data/sampledb16;shutdown=true

database.dialect = hsqldb

database.userName=sa

 

 

# The database maintainer is disabled by default.

updateDataBaseSchema.enabled=true

#This table is by default not created automatically

dbMaintainer.autoCreateExecutedScriptsTable=true

dbMaintainer.script.locations=D:/masterSpring/chapter16/resources/dbscripts

 

 

DbUnitModule.DataSet.factory.default=sample.unitils.dataset.excel.MultiSchemaXlsDataSetFactory

DbUnitModule.ExpectedDataSet.factory.default=sample.unitils.dataset.excel.MultiSchemaXlsDataSetFactory

 

 

DbUnitModule.DataSet.loadStrategy.default=org.unitils.dbunit.datasetloadstrategy.impl.CleanInsertLoadStrategy

DatabaseModule.Transactional.value.default=commit

 

 

 

# XSD generator

dataSetStructureGenerator.xsd.dirName=resources/xsd

 

 

二、创建测试类

通过继承 UnitilsJunit4类来创建测试类,注意测试类需要做以下工作:

Step1:加载Spring配置文件

@SpringApplicationContext{"baobao-service.xml","babao-dao.xml"}

 

Step2:加载Spring容器中的Bean

@SrpingBean("userService")

private UserService userService;

 

Step3:创建类初始化方法

使用@BeforeClass进行类级的数据初始化

 

Step4:准备测试使用的资源(可跳过)TODO:这段需要细化

使用Mock来生成相应的类

 

Step5:创建测试方法初始化方法

使用@Before标记每一次测试方法运行前要执行的方法。

 

Step6:创建测试方法

Unitils中,测试方法使用@Test来标识,创建测试方法时,我们要按以下的顺序来完成测试流程:

  • 初始化数据库表

使用@DataSet("Baobao.User.xls")注释来准备测试数据,这些数据会被Unitils根据数据初始化策略,加载入数据库

  • 准备验证数据

使用@ExpectedDataSet("Baobao.ExpectedSavedUser.xls"),当测试完成后,会使用excel中的数据对数据库进行验证

  • Excel中加载测试数据进行

User u = XlsDataSetBeanFactory.createBean("Baobao.SaveUser.xls","t_user",User.class);

 

Step7:清理数据

使用@After标记每一次测试方法运行后要运行的方法,@AfterClass标识类执行完前要执行的方法

posted @ 2012-07-24 21:56  气定神闲  阅读(586)  评论(0)    收藏  举报