org.junit.jupiter.api.Test和org.junit.Test
单元测试类。
引入后面的包,则报空指针异常,
如果引入后面的包,必须用public来修饰方法,
如果引入前面的包,就不用public来修饰方法。
spring boot 2.2之前使用的是 Junit4
spring boot 2.2之后使用的是 Junit5
Spring Boot 2.2 前后区别
Spring Boot 2.2 之前的测试类
package com.example.demo1;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest
public class Demo1ApplicationTests {
@Test
public void contextLoads() {
}
}
Spring Boot 2.2 之后的测试类
package com.example.demo;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
class DemoApplicationTests {
@Test
void contextLoads() {
}
}
此外呢,还有pom文件也有区别:
Spring Boot 2.2 之后的 pom.xml
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
Spring Boot 2.2 之后的 pom.xml
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
https://pan.baidu.com/s/1N2MZEvKxnsBjz6rh0Xkpmw 提