SSM整合junit
在框架中添加单元测试是肯定的.来看看添加步骤吧
方式一
添加jar
由于我们所有项目的一个公共的管理jar的版本的地方:kwy-parent(这里如果忘记结构了,可以回过去看一下这篇博客: SSM从零开始搭框架(一)). 所以需要在这个里面,添加上jar以及jar的版本
<junit.version>4.12</junit.version> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junit.version}</version> </dependency>
service的pom文件添加内容
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> </dependency>
添加测试的util类,加载所有的spring文件,启动容器
package testUtil; import com.tgb.kwy.dubbo.facade.ClassFacade; import org.junit.Before; import org.junit.runner.Computer; import org.springframework.beans.factory.BeanFactory; import org.springframework.context.support.ClassPathXmlApplicationContext; public class CommonFacade { public BeanFactory factory; public ClassFacade classFacade; @Before public void setUp(){ factory=new ClassPathXmlApplicationContext("classpath:spring/spring-context.xml"); classFacade=(ClassFacade) factory.getBean("classFacade");//关于getBean()这里请看下面的解释 } }
getBean里面的名字,是根据facadeImpl来的
添加测试类,继承CommonFacade
package com.kwy.dubbo.facade.test; import org.junit.Test; import testUtil.CommonFacade; public class ClassFacadeTest extends CommonFacade { @Test public void deleteBySignId(){ boolean flag=classFacade.deleteBySignId("1"); assert flag:"报错啦"; } }
目录结构:
方式二
如果想采用SpringTest(spring框架的test包) junit来进行单元测试
添加jar
由于我们所有项目的一个公共的管理jar的版本的地方:kwy-parent(这里如果忘记结构了,可以回过去看一下这篇博客: SSM从零开始搭框架(一)). 所以需要在这个里面,添加上jar以及jar的版本
<junit.version>4.12</junit.version> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junit.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version> ${spring.version} </version> </dependency>
service的pom文件添加内容
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <scope>provided</scope> </dependency>
添加测试类:
package com.kwy.dubbo.facade.test; import com.tgb.kwy.dubbo.facade.ClassFacade; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration({"classpath:spring/spring-context.xml"}) public class ClassFacadeTest { @Autowired private ClassFacade classFacade; @Test public void deleteBySignId(){ boolean flag=classFacade.deleteBySignId("1"); assert flag:"报错啦"; } }
这里有了一个新东西:断言, 具体断言,请见我的这篇文章: java断言
后面还有一些druid的添加,请见我的下篇文章:SSM从零开始搭框架(五)