spring整合junit集成测试

本文介绍了一种简化Spring Boot服务测试的方法,通过在类上使用@RunWith(SpringJUnit4ClassRunner.class)和@ContextConfiguration注解,可以直接进行测试而无需先加载主配置文件。此外,提出使用抽象类作为基类,继承该类即可实现快速测试服务的目标,极大提高了测试效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前测试代码:

@Test
public void testAddOld() {
ApplicationContext appContext = new ClassPathXmlApplicationContext("application.xml");
appContext.getBean("testTbService");
TestTb testTb = new TestTb();
testTb.setName("小虫");
testTb.setBirthday(new Date());

testTbService.addTestTb(testTb);
}


之前测试service时都是先加载spring的主配置文件,然后getBean从IOC容器中得到service的实例再进行相应的测试。比较麻烦。


package cn.smallbug;

import java.util.Date;

import javax.annotation.Resource;

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

import cn.smallbug.core.bean.TestTb;
import cn.smallbug.core.service.TestTbService;

/**
*
* @timestamp Jan 31, 2016 11:27:24 PM
* @author smallbug
*/
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "classpath:application-context.xml" })
public class TestTestTb {

@Resource
private TestTbService testTbService;

@Test
public void testAdd() {
TestTb testTb = new TestTb();
testTb.setName("小虫");
testTb.setBirthday(new Date());

testTbService.addTestTb(testTb);
}
}



殊不知其实是可以在类上加两行注解:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "classpath:application-context.xml" })

再@Resource注入,直接就可以测试service了。而且可以再写个抽象类,加上上面两句注解,谁要测试直接继承这个类就行了,非常方便。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值