一般情况下,我们的测试类是继承自抽象类AbstractDependencyInjectionSpringContextTests,需要注意的就是要重写方法getConfigLocation()。这样的测试类有个优点就是每个测试方法Spring容器都只对beans初始化一次。
但是,有些情况下我们不想在单元测试的时候破坏数据库现场,这时候可以是测试类继承抽象类AbstractTransactionalSpringContextTests。使用这个抽象类的时候,一定要注意属性TransactionManager属性的注入,以及TransactionManager的DataSource属性的注入,否则测试类是不能够初始化的
public abstract class BaseTest extends AbstractDependencyInjectionSpringContextTests {
@Override
protected String[] getConfigLocations() {
String[] config = new String[]{
"file:web/WEB-INF/spring.xml",
"file:web/WEB-INF/spring-app.xml"
};
return config;
}
@Override
protected void injectDependencies() throws Exception {
this.setAutowireMode(AUTOWIRE_BY_NAME);
super.injectDependencies();
}
}
如果需要测试某个bean,我们可以继承上面的BaseTest类
public class TestNeiDAOImpl extends BaseTest{
Log log = Log.getLog(TestNeiDAOImpl.class);
NeiDAO neiDAO ;
UserInfo userInfo;
public void testAddUserInfo(){
userInfo.setAge(20);
userInfo.setRegisterTime(new Date());
userInfo.setUpdateTime(new Date());
neiDAO.addUserCore(userInfo);
}
//通过setter方法自动从context里注入neiDAO bean,而不用显示调用
public void setNeiDAO(NeiDAO neiDAO){
this.neiDAO = neiDAO;
}
}
我们不需要手动的从applicationContext容器中找某个bean,spring自动通过sett方法注人我们需要的bean。需要注意的是,如果我们有多个 bean的类型一样,这样就需要我们手动获取
public void onSetUp() {
neiDAO= (NeiDAO) applicationContext.getBean("neiDAO");
}
如果需要使用spring的单元测试,我们还需要导入spring test的jar包。
分享到:
相关推荐
通过Spring集成单元测试,以后测试service层内容时,就不用getBean()来获得Service层对象了
spring3 + mybatis3 + junit4 可运行项目示例 可进行单元测试,集成测试。。。
junit4单元测试使用步骤 参数化单元测试示例 spring集成junit4示例
Spring集成JUnit4,进行单元测试,包括数据和服务器mock等等
为了后期测试基于spring的单元测试,我们直接新建spring工程。新建之后,我们先讲一般在java项目中怎么去做单元测试。我们先定义一个实体User在service包中新建一个接口,在接口中定义一个方法,方法的返回值就是...
java_junit集成_亲测可用_含有jar包以及源码,和spring 集成
Thymeleaf+Spring 测试项目该项目的目的是研究 Spring 和 Thymeleaf 作为 Eionet 软件的新软件标准。 设置为E-PRTR的demo,供大家讨论改写使用。 该应用程序使用 Liquibase 创建和升级数据库,并使用 Thymeleaf 作为...
8、Spring集成Junit测试 9、Spring集成web环境 10、Spring JDBCTemplate基本使用 11、SpringAOP简介和快速入门 12、Spring XML方式配置AOP 13、Spring注解方式配置AOP 14、Spring编程式事务控制介绍 15、Spring基于...
1.30 Spring Boot Junit单元测试 1.31 SpringBoot启动时的Banner设置 1.32 Spring boot 文件上传(多文件上传) 1.33 导入时如何定制spring-boot依赖项的版本 1.34 Spring Boot导入XML配置 1.35 Spring Boot使用@...
利用ssi框架集成增删改查及存储过程处理,利用Junit测试框架进行单元测试。非常全面的例子。
Spring对Junit4支持,可以通过注解方便的测试Spring程序 方便集成各种优秀框架 Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架(如:Struts、Hibernate、MyBatis、Quartz等)的直接支持
15. spring-test-4.1.1.RELEASE.jar 支持Spring组建JUnit和TestNG的单元测试和集成测试。 16. spring-tx-4.1.1.RELEASE.jar 17. spring-web-4.1.1.RELEASE.jar 包含Web应用开发时,用到Spring框架时所需的核心类,...
7.Spring+Junit4单元测试,优点:不会破坏数据库现场,等等。 2)Demo 导入说明: 1.Eclipse Encoding:GBK 2.Eclipse 导入后可能需要在 Xml Catalog 手动添加:ehcache-spring-1.2.xsd(ehcache-spring-annotations...
与Spring Boot,Elasticsearch,Testcontainers和JUnit5的集成测试 一个简单的示例,演示测试容器,Elasticsearch和JUnit 5如何一起玩。 二手技术 Spring Boot 2.4.3 Kotlin1.4.31 带有Elasticsearch 7.10.1 ...
如何将Spock模拟注入到Spring集成测试中该项目旨在用作示例指南,以说明如何将Spock与Spring(和Spring Boot)结合使用,并结合使用Spring配置和Spock模拟。 有时,您想使用整个Spring上下文进行更完整的集成测试。 ...
@RunWith 指定测试类使用的某个运行器参数SpringJUnit4ClassRunner.class @Parameters 指定参数类的参数数据集合 @Rule 允许灵活添加或重新定义测试类中的每个测试方法的行为 @FixMethodOrder 指定测试方法的执行...
* 集成 Junit 单元测试 * 读取系统环境变量 * 使用自定义 properties * 改变默认包扫᧿ * 自定义启动 Banner * 导入 spring XML 配置文件 * 热部署 * 监控和管理生产环境 * starter 详解 * 依赖的版本 * 文件上传 * ...
里面演示了spring ioc的基本使用,同时使用了junit进行单元测试,后期会加入spring集成junit。 工程使用Maven管理,下载工程后,请使用mvn clean, mvn compile指令对工程进行编译,通过后,使用mvn eclipse:eclipse...
第16章:有别于一般书籍的单元测试内容,本书以当前最具实战的JUnit4+Unitils+ Mockito复合测试框架对如何测试数据库、Web的应用进行了深入的讲解。 第17章:以一个实际的项目为蓝本,带领读者从项目需求分析、...