junit4相比junit3的最大区别就是引入了annotation,现在我写一个测试案例不用继承TestCase了,另外以前在testcase里面必须将测试方法都写成以test字符串开始的名字,现在不用了直接用@Test添加到类里面就ok了。
而spring配置文件的加载也简单了,在类定义的上面添加就可以自动加载spring配置文件。
确实比以前单独写个方法简单。赞annotation的强大。
@ContextConfiguration(locations={"。。。.xml"})
/*
* Copyright 2006-2007 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.batch.sample;
import org.junit.Test;
import org.springframework.context.Lifecycle;
/**
* Abstract TestCase that automatically starts a Spring {@link Lifecycle} after
* obtaining it automatically via autowiring by type.
*
* This implemenation is based on JUnit4 and SpringJUnit4ClassRunner being used
* to provide autowiring. It should be noted that @ContextConfiguration must be
* specified for dependency injection to work properly.
*
* @author Lucas Ward
* @author Thomas Risberg
*
* @see org.springframework.test.context.junit4.SpringJUnit4ClassRunner
*/
public abstract class AbstractValidatingBatchLauncherTests extends AbstractBatchLauncherTests {
@Test
public void testLaunchJob() throws Exception {
validatePreConditions();
super.testLaunchJob();
validatePostConditions();
}
/**
* Make sure input data meets expectations
* @throws Exception any exception thrown
*/
protected void validatePreConditions() throws Exception {
}
/**
* Make sure job did what it was expected to do.
* @throws Exception any exception thrown
*/
protected abstract void validatePostConditions() throws Exception;
}
package org.springframework.batch.sample;
import static org.junit.Assert.assertTrue;
import javax.sql.DataSource;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.simple.SimpleJdbcTemplate;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"FootballJobFunctionalTests-context.xml"})
public class FootballJobFunctionalTests extends AbstractValidatingBatchLauncherTests {
private SimpleJdbcTemplate simpleJdbcTemplate;
@Autowired
public void setDataSource(DataSource dataSource) {
this.simpleJdbcTemplate = new SimpleJdbcTemplate(dataSource);
}
@Override
protected void validatePreConditions() throws Exception {
// simpleJdbcTemplate.update("DELETE FROM PLAYERS");
// simpleJdbcTemplate.update("DELETE FROM GAMES");
// simpleJdbcTemplate.update("DELETE FROM PLAYER_SUMMARY");
// super.validatePreConditions();
}
@Override
protected void validatePostConditions() throws Exception {
// int count = simpleJdbcTemplate.queryForInt("SELECT COUNT(*) from PLAYER_SUMMARY");
// assertTrue(count > 0);
}
}
分享到:
相关推荐
引入spring-test模块(通常为spring-test-4.x.x.jar或更高版本)后,可以更方便地对Spring组件进行隔离测试,同时能够利用Spring的IoC特性。 要进行SSM项目的单元测试,你需要做以下几步: 1. **添加依赖**:在你...
struts-junit spring-mock spring-test junit等的javadoc.jar格式的API文档,直接导入Eclipse/MyEclipse/Netbeans等IDE即可实现快速API查询。 包含以下文件: File name -------------------------------------- ...
本文将详细探讨`spring-test-3.2.0.RELEASE.jar`这一版本中的核心特性、使用方法及其在实际项目中的应用。 首先,`spring-test`模块的核心目标是简化Spring应用的测试工作,它提供了对JUnit、TestNG等主流测试框架...
这个zip包里面有两个jar ,分别是两个版本的, 因为spring做单元测试的时候, 是很容易出现版本不兼容的情况, 所以我将我用到的jar包分享出来,zip包中内容:hamcrest-core-1.3、junit4.4、junit-4.12、spring_test...
总之,通过JUnit和Spring-test的结合使用,我们可以对SpringJDBC组件的DAO层进行全面、严谨的测试,确保其功能的正确性和稳定性。同时,合理配置Druid数据源,有助于优化测试性能。测试不仅是为了找出问题,更是为了...
接下来,我们将深入探讨Spring Test与JUnit4的结合使用以及如何通过它们进行测试代码的编写。 首先,Spring Test模块提供了一组测试注解,如`@ContextConfiguration`、`@RunWith(SpringRunner.class)`等,这些注解...
Spring整合Junit测试时所需要的jar包。 spring-test-3.2.3.RELEASE.jar
分别是两个版本的, 因为spring做单元测试的时候, 是很容易出现版本不兼容的情况, 所以我将我用到的jar包分享出来,zip包中内容:spring_test2.5.5、spring-test-3.2.0.RELEASE 这个我忘了上传有关于junit的jar ,...
而这次我们要探讨的是Spring Framework 2.5.6版本,它包含了对JUnit 4.4和Spring Test的支持,这使得测试驱动开发(TDD)在Spring项目中变得更加得心应手。 Spring Framework 2.5.6是该框架的一个里程碑版本,它...
虽然更常见的是与JUnit结合使用,但`spring-test`模块也支持TestNG,提供类似的测试支持和增强。 8. **Spock测试**: 对于喜欢使用Spock框架的开发者,Spring也提供了对Spock的集成,可以利用其强大的断言和数据...
首先,Spring-test的核心组件是`SpringJUnit4ClassRunner`或`SpringRunner`(在JUnit5中),它们使得我们可以在测试类中利用Spring的依赖注入功能。通过在测试类上添加`@RunWith(SpringRunner.class)`注解,我们可以...
在Spring Boot中,我们通常使用JUnit作为测试框架,结合`@RunWith(SpringRunner.class)`注解来运行Spring管理的测试。通过`@Autowired`注解注入需要的bean,并使用`@MockBean`或`@SpyBean`来创建mock对象,以便在...
spring整合Junit4所依赖的jar
总的来说,"spring-test-3.2.8"和"junit-4.10"是Java开发中的重要测试工具,它们的结合使用能够帮助开发者有效地进行单元测试和集成测试,提高代码质量,降低维护成本。对于任何涉及Spring框架的项目来说,理解和...
spring-text包,用于注释单元测试,比用junit那种方式方便一点。所以分享给大家,直接复制到lib文件下
spring-test.jar 用在junit4以上 在类上写 @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations={"WIN-INF/config/applicationContext.xml" })
spring-test-junit5, JUnit ( a )的spring TestContext框架扩展( a ) spring 5测试支持这个项目作为 5的正式 Prototype,在 spring TestContext框架测试支持,并与 SPR-13575结合到 Spring Framework 。 因此,在...
spring junit测试jar包
《Spring Test 3.2.9:单元测试与JUnit的深度整合》 在软件开发过程中,单元测试是一项至关重要的任务,它确保了代码的正确性...在实际项目中,结合使用Spring Test 3.2.9与JUnit,将大大优化开发流程,提高开发效率。
spring-test项目实例 1.使用spring-test与junit进行单元测试。 2.包含回滚动作,避免测试数据污染数据库。