前言:
对于搭建Spring集成测试环境是相当有必要的,对于WEB应用来说,没有一个完整的TEST体系,你的开发与测试会变的非常痛苦,记得在很久之前,我 并不知道如何去搭建SPRING集成测试环境的时候,所有的测试都是在Web页面上进行,这样是相当的资源浪费与痛苦的事情,网上有多种Spring集成 测试的搭建方法,我这里贴出个人感觉比较稳妥的方案:
步骤:
1.建立Test配置文件,之所以建立Test配置文件就是为了与真实环境或WEB开发环境相分离,集成测试由于和服务器相分离,所以你不能使用开发环境或产品环境的配置文件
常用的配置分离有两种方案:
A:数据源分离
B:建立Test Context.xml 使Test环境有一个单独的引用
在此,我采用了第二种,因为往往测试环境上会对配置做一些相应的更改
create applicationContext-test.xml:
Xml代码
[xml]
<context:property-placeholder location=”classpath:mysql.properties”/>
<bean id=”dataSource”>
<property name=”driverClassName” value=”${jdbc.driverClassName}”></property>
<property name=”url” value=”${jdbc.url}”></property>
<property name=”username” value=”${jdbc.username}”></property>
<property name=”password” value=”${jdbc.password}”></property>
</bean>
[/xml]
.其它配置保持不变,这里主要是从mysql.properties里进行数据库连接
2.建立BaseTestCase类,进行TestCase通一管理
BaseTestCase.java
Java代码
[JAVA]
public class BaseTestCase extends AbstractDependencyInjectionSpringContextTests{
protected String[] getConfigLocations() {
String[] config = new String[]{“classpath*:applicationContext-Test.xml”};
return config;
}
}
[/JAVA]
这里继承Spring的AbstractDependencyInjectionSpringContextTests类,然后就可以使用getConfigLocations()方法读取配置文件.
classpath*:表明从所有的classpath下面查找,如果你没有采用多模块的话,可以不加”*”.
3.进行TestCase测试:
建立一个TestCase类,进行测试:
Test.java
Java代码
[JAVA]
public class Test extends BaseTestCase{
public void test()
{
//….
}
[/JAVA]
至此Spring的集成测试环境建立完成
[…] 如果还不清楚如何搭建Spring集成测试环境的童鞋,请移步到这里 搭建Spring集成测试环境 […]
就小说艺术的角度而言,这篇帖子不算太成功,但它的实验意义却远远大于成功本身。