- 浏览: 101422 次
- 性别:
- 来自: 苏州
文章分类
最新评论
-
wangyudong:
由CXF实现的微服务需要有比较好的工具去测试RESTful A ...
CXF 拦截器的使用(转) -
bayer05:
这种做法的缺陷在于对于每一个service的方法, 都要客户端 ...
cxf-rsa加密(记录)
applicationContext-core-test.xml:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd" default-lazy-init="true"> <description>Spring公共配置文件</description> <!-- 数据源配置,在测试环境使用单连接 --> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="org.h2.Driver" /> <property name="url" value="jdbc:h2:mem:springside-core-test" /> <property name="username" value="sa" /> <property name="password" value="" /> </bean> <!-- Hibernate配置 --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="namingStrategy"> <bean class="org.hibernate.cfg.ImprovedNamingStrategy" /> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.H2Dialect</prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.format_sql">true</prop> </props> </property> <property name="packagesToScan" value="org.springside.modules.unit.orm.hibernate.data" /> </bean> <!-- 事务管理器配置,单数据源事务 --> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory" /> </bean> <!-- 使用annotation定义事务 --> <tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true" /> <bean id="springContextHolder" class="org.springside.modules.utils.spring.SpringContextHolder" lazy-init="false"/> </beans>
SpringContextTestCase:
/** * Copyright (c) 2005-2010 springside.org.cn * * Licensed under the Apache License, Version 2.0 (the "License"); * * $Id: SpringContextTestCase.java 1210 2010-09-10 16:13:27Z calvinxiu $ */ package org.springside.modules.test.spring; import org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests; /** * Spring的支持依赖注入的JUnit4 集成测试基类, 相比Spring原基类名字更短. * * 子类需要定义applicationContext文件的位置,如: * @ContextConfiguration(locations = { "/applicationContext-test.xml" }) * * @author calvin */ public abstract class SpringContextTestCase extends AbstractJUnit4SpringContextTests { }
SpringTxTestCase:
/** * Copyright (c) 2005-2010 springside.org.cn * * Licensed under the Apache License, Version 2.0 (the "License"); * * $Id: SpringTxTestCase.java 1215 2010-09-12 04:14:26Z calvinxiu $ */ package org.springside.modules.test.spring; import javax.sql.DataSource; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests; /** * Spring的支持数据库访问,事务控制和依赖注入的JUnit4 集成测试基类,相比Spring原基类名字更短. * * 子类需要定义applicationContext文件的位置, 如: * @ContextConfiguration(locations = { "/applicationContext-test.xml" }) * * @author calvin */ public abstract class SpringTxTestCase extends AbstractTransactionalJUnit4SpringContextTests { protected DataSource dataSource; @Override @Autowired public void setDataSource(DataSource dataSource) { super.setDataSource(dataSource); this.dataSource = dataSource; } }
SimpleHibernateDaoTest:
package org.springside.modules.unit.orm.hibernate; import static org.junit.Assert.*; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.sql.DataSource; import org.hibernate.Criteria; import org.hibernate.FetchMode; import org.hibernate.Hibernate; import org.hibernate.Query; import org.hibernate.SessionFactory; import org.hibernate.criterion.Criterion; import org.hibernate.criterion.Restrictions; import org.junit.Before; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springside.modules.orm.hibernate.SimpleHibernateDao; import org.springside.modules.test.spring.SpringTxTestCase; import org.springside.modules.test.utils.DbUnitUtils; import org.springside.modules.unit.orm.hibernate.data.User; import org.springside.modules.utils.reflection.ReflectionUtils; import com.google.common.collect.Lists; import com.google.common.collect.Maps; @ContextConfiguration(locations = { "/applicationContext-core-test.xml" }) public class SimpleHibernateDaoTest extends SpringTxTestCase { private static final String DEFAULT_LOGIN_NAME = "admin"; private SimpleHibernateDao<User, Long> dao; @Autowired private SessionFactory sessionFactory; @Before public void setUp() throws Exception { simpleJdbcTemplate.update("drop all objects"); executeSqlScript("classpath:/schema.sql", false); DbUnitUtils.loadData((DataSource) applicationContext.getBean("dataSource"), "classpath:/test-data.xml"); dao = new SimpleHibernateDao<User, Long>(sessionFactory, User.class); } @Test public void crud() { User user = new User(); user.setName("foo"); user.setLoginName("foo"); //add dao.save(user); dao.flush(); //update user.setName("boo"); dao.save(user); dao.flush(); //delete object dao.delete(user); dao.flush(); //delete by id User user2 = new User(); user2.setName("foo2"); user2.setLoginName("foo2"); dao.save(user2); dao.flush(); dao.delete(user2.getId()); dao.flush(); } @Test public void getSome() { //get all List<User> users = dao.getAll(); assertEquals(6, users.size()); //get all with order users = dao.getAll("id", true); assertEquals(6, users.size()); assertEquals(DEFAULT_LOGIN_NAME, users.get(0).getLoginName()); //get by id list users = dao.get(Lists.newArrayList(1L, 2L)); assertEquals(2, users.size()); } @Test public void findByProperty() { List<User> users = dao.findBy("loginName", DEFAULT_LOGIN_NAME); assertEquals(1, users.size()); assertEquals(DEFAULT_LOGIN_NAME, users.get(0).getLoginName()); User user = dao.findUniqueBy("loginName", DEFAULT_LOGIN_NAME); assertEquals(DEFAULT_LOGIN_NAME, user.getLoginName()); } @Test public void findByHQL() { List<User> users = dao.find("from User u where loginName=?", DEFAULT_LOGIN_NAME); assertEquals(1, users.size()); assertEquals(DEFAULT_LOGIN_NAME, users.get(0).getLoginName()); User user = dao.findUnique("from User u where loginName=?", DEFAULT_LOGIN_NAME); assertEquals(DEFAULT_LOGIN_NAME, user.getLoginName()); Map<String, Object> values = Maps.newHashMap(); values.put("loginName", DEFAULT_LOGIN_NAME); users = dao.find("from User u where loginName=:loginName", values); assertEquals(1, users.size()); assertEquals(DEFAULT_LOGIN_NAME, users.get(0).getLoginName()); user = dao.findUnique("from User u where loginName=:loginName", values); assertEquals(DEFAULT_LOGIN_NAME, user.getLoginName()); } @Test public void findByCriterion() { Criterion c = Restrictions.eq("loginName", DEFAULT_LOGIN_NAME); List<User> users = dao.find(c); assertEquals(1, users.size()); assertEquals(DEFAULT_LOGIN_NAME, users.get(0).getLoginName()); User user = dao.findUnique(c); assertEquals(DEFAULT_LOGIN_NAME, user.getLoginName()); } @Test public void batchUpdate() { Map map = new HashMap(); map.put("ids", new Long[] { 1L, 23L }); dao.batchExecute("update User u set u.status='disabled' where id in(:ids)", map); User u1 = dao.get(1L); assertEquals("disabled", u1.getStatus()); User u3 = dao.get(3L); assertEquals("enabled", u3.getStatus()); } @Test public void eagerFetch() { String sql = "from User u left join fetch u.roleList order by u.id"; Query query = dao.createQuery(sql); List<User> userList = dao.distinct(query).list(); assertEquals(6, userList.size()); assertTrue(Hibernate.isInitialized(userList.get(0).getRoleList())); Criteria criteria = dao.createCriteria().setFetchMode("roles", FetchMode.JOIN); userList = dao.distinct(criteria).list(); assertEquals(6, userList.size()); assertTrue(Hibernate.isInitialized(userList.get(0).getRoleList())); } @Test public void misc() { getIdName(); isPropertyUnique(); constructor(); } public void getIdName() { assertEquals("id", dao.getIdName()); } public void isPropertyUnique() { assertEquals(true, dao.isPropertyUnique("loginName", "admin", "admin")); assertEquals(true, dao.isPropertyUnique("loginName", "user6", "admin")); assertEquals(false, dao.isPropertyUnique("loginName", "user2", "admin")); } public void constructor() { MyUserDao myDao = new MyUserDao(); Class entityClazz = (Class) ReflectionUtils.getFieldValue(myDao, "entityClass"); assertEquals(User.class, entityClazz); } static class MyUserDao extends SimpleHibernateDao<User, Long> { } }
- springside-3.3.4-src.zip (832.3 KB)
- 下载次数: 330
- story.rar (67 KB)
- 下载次数: 61
相关推荐
spring单元测试包spring单元测试包spring单元测试包spring单元测试包spring单元测试包
亲测可用, 希望可以帮到大家
该资源包含了spring整合单元测试Junit开发包spring-test-4.2.4.RELEASE.jar
Spring集成JUnit4,进行单元测试,包括数据和服务器mock等等
Struts2 Spring 框架整合 单元测试 Action和Service http://blog.csdn.net/fansunion/
通过Spring集成单元测试,以后测试service层内容时,就不用getBean()来获得Service层对象了
使用Idea工具建立的Maven工程,整合Spring和MyBatis,成功通过单元测试
主要介绍了spring单元测试下模拟rabbitmq的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
Spring Boot单元测试
为了后期测试基于spring的单元测试,我们直接新建spring工程。新建之后,我们先讲一般在java项目中怎么去做单元测试。我们先定义一个实体User在service包中新建一个接口,在接口中定义一个方法,方法的返回值就是...
spring mvc的简单单元测试:,详细请参考:http://blog.csdn.net/xiejx618/article/details/21201007
Spring Boot中的单元测试.pdfSpring Boot中的单元测试.pdfSpring Boot中的单元测试.pdfSpring Boot中的单元测试.pdfSpring Boot中的单元测试.pdfSpring Boot中的单元测试.pdfSpring Boot中的单元测试.pdfSpring Boot...
Junit4+Spring2.5单元测试代码示例同时也适用注解注入的形式测试(前提要导好测试的包哦,包MyEclipce自带了)
rabbitMq与spring、springmvc结合的测试工程
Struts+Spring框架下的单元测试
JUnit单元测试框架 张明生PPT课件.pptx
NULL 博文链接:https://caerun.iteye.com/blog/1108226