使用注解来代替xml配置文件来搭建MVC三层架构变得十分简单,那么我们就将偷懒贯彻到底。使用@SpringJUnitConfig就可以省去在test类中,创建IOC容器了。
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;
//注解的参数如果是value则代表是配置类,如果是location则代表是xml配置文件
//如果突然想不起来,可以看注解的底层代码,参数类型是class类型就是配置类,string类型就是xml配置文件
//@SpringJUnitConfig(locations = "")
@SpringJUnitConfig(value = configuration.class)
public class mytest {
@Autowired
private studentController studentcontroller;
@Test
public void test(){
studentcontroller.findAll();
}
}
但是在测试过程中,我发现了一个问题,之前我用org.junit包下的Test注解会报空指针的异常,但是我用小黄鸭调试法,发现代码没问题,于是我百度发现大家用的包是org.junit.jupiter,最后我也换成了这个包,最终调试成功,org.junit.jupiter包如下:
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>5.10.2</version>
<scope>test</scope>
</dependency>
此外导入这个包还需要加上其他的两个依赖,依赖如下:
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>5.10.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.platform</groupId>
<artifactId>junit-platform-launcher</artifactId>
<version>1.10.2</version>
<scope>test</scope>
</dependency>