JUnit+Spring

Spring4.3        JUnit4.12

测试类基类:

package xyz.jangle.test.utils;

import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

/**
 * @author huhj
 * @email jangle@jangle.xyz
 * @time 2018年6月26日 
 */
// 表示整合JUnit4进行测试(需要 JUnit4.12及以上版本)
@RunWith(SpringJUnit4ClassRunner.class)
// 加载spring配置文件   超类是事务管理的相关功能,继承后默认Rollback(true)
@ContextConfiguration(locations = { "classpath:spring.xml" })
public class JUnitUtils extends AbstractTransactionalJUnit4SpringContextTests {
	// 此处是以编码方式手动获取Spring的Bean对象的设计。
	/*
	 * private volatile static BeanFactory factory;
	 * 
	 * @Before public void setUp() throws Exception {
	 * System.out.println("加载spring配置开始 ............");
	 * 
	 * ArrayList<String> list = new ArrayList<String>(); list.add("spring.xml");
	 * // 将Sprint配置文件加入待加载列表 try { factory = new ClassPathXmlApplicationContext(
	 * list.toArray(new String[list.size()])); // 保证虚拟机退出之前
	 * spring中singtleton对象自定义销毁方法会执行 ((AbstractApplicationContext)
	 * factory).registerShutdownHook(); } catch (Exception e) {
	 * e.printStackTrace(); System.out.println("加载配置文件时发生错误" + e); }
	 * System.out.println("加载spring配置结束............."); }
	 * 
	 * public static Object getBean(Class<?> bean){ // return
	 * factory.getBean(bean); return null; }
	 */

}


业务类:

package xyz.jangle.service.impl;

import java.util.List;

import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import xyz.jangle.mapper.UserMapper;
import xyz.jangle.model.User;
import xyz.jangle.service.UserService;

@Service
public class UserServiceImpl implements UserService {
	
	private static Logger logger = Logger.getLogger(UserServiceImpl.class);   

	@Autowired
	UserMapper userMapper;

	@Override
	public String getUser() {
		logger.info("UserServiceImpl Method.");
		List<User> userList = userMapper.findAll();
		for (User user : userList) {
			System.out.println("id:" + user.getUserId());
			System.out.println("age:" + user.getUserAge());
			System.out.println("name:" + user.getUserName());
		}
		User user = userMapper.findById(1);
		System.out.println("单用户信息查询,Name:" + user.getUserName());
		return "hello";
	}

}

业务类测试:

package xyz.jangle.service.test;

import static org.junit.Assert.*;

import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;

import xyz.jangle.service.UserService;
import xyz.jangle.test.utils.JUnitUtils;

/**
 * @author huhj
 * @email jangle@jangle.xyz
 * @time 2018年6月26日 
 */
public class UserServiceImplTest extends JUnitUtils{
	@Autowired
	private UserService userService;
	
	@Test
	public void testGetUser() {
		assertEquals("hello",userService.getUser());
	}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值