1.第一步 引入 JUnit5 的 jar 包
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.2.2.RELEASE</version>
<scope>test</scope>
</dependency>
注意这里引入的依赖版本要和spring-web的版本一样不然就报错
2. 测试
package junit;
import com.chen.pojo.service.UserService;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit.jupiter.SpringExtension;
import java.util.List;
import java.util.Map;
//junit5测试
@ExtendWith(SpringExtension.class)
@ContextConfiguration("classpath:application.xml")
public class JUnit5 {
@Autowired
private UserService userService;
@Test
public void test(){
List<Map<String, Object>> list = userService.querylist();
for (Map<String, Object> map : list) {
System.out.println(map);
}
}
}
3.spring整合junit4
package junit;
import com.chen.pojo.service.UserService;
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;
import java.util.List;
import java.util.Map;
@RunWith(SpringJUnit4ClassRunner.class)//指定测试框架
@ContextConfiguration("classpath:application.xml")//加载配置文件
public class JUNIT4 {
@Autowired
private UserService userService;
@Test
public void test1(){
List<Map<String, Object>> maps = userService.querylist();
for (Map<String, Object> map : maps) {
System.out.println(map);
}
}
}
注意:
1.junit4引入的包是
import org.junit.Test;
用的注解是:
@RunWith(SpringJUnit4ClassRunner.class)//指定测试框架
@ContextConfiguration("classpath:application.xml")//加载配置文件
2.junit5引入的包是
import org.junit.jupiter.api.Test;
用的注解是:
//junit5测试
@ExtendWith(SpringExtension.class)
@ContextConfiguration("classpath:application.xml")
上面两个注解可以换成一个复合注解
@SpringJUnitConfig(locations = "classpath:application.xml")