org.junit.Test与org.junit.jupiter.api.Test的区别?

org.junit.Test 的底层

底层有一个核心运行器 Runner ,里面有个main方法去反射执行标记有 @Test 的注解的方法。

org.junit.Test 是 Spring 家族的吗?

不是,所以在测试单元中使用@Autowired注解是并不会被解析得到的,也就是说org.junit.Test没有Spring容器,所以要使用的话需要使用@Runwith(SpringRunner.class)注解来表示使用Spring的核心运行器去替代掉org.junit.Test的核心运行器,因为Spring的核心运行器会帮我们创建Spring容器。

如果使用org.junit.jupiter.api.Test呢?

org.junit.jupiter.api.Test会默认创建Spring容器

最后修改:2023 年 06 月 19 日
如果觉得我的文章对你有用,请随意赞赏