昨天晚上做了一个单元测试,因为数据源的问题一直没有 成功,最后问了一下同事,才把问题解决了,现在我就把问题梳理一下跟大家分享分享.
单元测试其实是很简单的,我以前都是用main 方法做简单的测试,但是现在需要注入mapper,所以需要用到spring等配置文件,具体是怎么用到的我也不是很清楚,我所知道的就是我的这种方法是可以成功的做单元测试的,所以没有其他解释。
我在测试类里这样写的:
@ContextConfiguration({ "classpath*:spring-application.xml" }) @RunWith(SpringJUnit4ClassRunner.class) public class DataTest { @Autowired VoucherService voucherService; @Test public void testDeliverVoucher(){ VoucherBean voucherBean=new VoucherBean(); voucherBean.setUserId("12131"); voucherBean.setOrderId(222210); voucherBean.setProductId(23232); voucherBean.setName("cechiis"); Date currentTime = new Date(); voucherBean.setValidTime(currentTime); boolean s= voucherService.deliverVoucher(voucherBean); System.out.println("交付卡券:"+s); } @Test public void testExpenseVoucher(){ Integer sdf=17; boolean s= voucherService.expenseVoucher(sdf); System.out.println("消费卡券"+s); } @Test public void testGetVoucherList(){ List<VoucherBean> voucherBeanList=new ArrayList<>(); voucherBeanList= voucherService.getVoucherList("1212151",121); System.out.println(voucherBeanList.size()); } }
配置文件是很重要的,如果配置文件的路径不对,那么也会报错, 在这里只加载了一个
spring-application.xml 是因为这个文件里面已经import 了其他的文件
<context:component-scan base-package="com.hupu.smart" />
<import resource="spring-jdbc.xml"/>
<import resource="hessian-client.xml"/>
<import resource="hessian-mvc.xml"/>
所以只要加载了这个文件就可以把所有的配置文件加载出来,然后就可以做测试了。