springboot中有没有有@RunWith(SpringJUnit4ClassRunner.class)
时间: 2024-06-13 11:04:45 浏览: 11
在Spring Boot中,可以使用@RunWith(SpringJUnit4ClassRunner.class)来运行JUnit4测试类。但是,随着Spring Boot的版本更新,JUnit5也被支持了。因此,建议使用@ExtendWith(SpringExtension.class)来代替@RunWith(SpringJUnit4ClassRunner.class)。
相关问题
package com.cyc; import com.cyc.Controller.HelloController; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class) @SpringBootTest public class HelloTest { @Autowired private HelloController helloController; @Test public void helloControllerTest(){ System.out.println(helloController.helloSpringboot()); } }
这是一个使用 Spring Boot 进行单元测试的 Java 代码,其中通过 @Autowired 注解注入了一个 HelloController 对象,并调用了它的 helloSpringboot() 方法,将返回值打印到控制台。
springboot中@runwith的作用
在Spring Boot中,@RunWith注解与JUnit框架的作用是一致的,它也用于指定测试类的运行器。但是,Spring Boot中通常使用SpringJUnit4ClassRunner或SpringRunner作为运行器,而不是JUnit框架默认的运行器。
SpringJUnit4ClassRunner是Spring提供的JUnit4的运行器,它可以在测试开始时自动创建Spring的应用上下文,这样我们就可以在测试中直接使用Spring管理的Bean了。
而SpringRunner是SpringJUnit4ClassRunner的别名,为了方便起见,Spring Boot提供了这个别名,使得我们可以更加简化地使用SpringJUnit4ClassRunner运行器。
因此,在Spring Boot中,使用@RunWith注解指定SpringJUnit4ClassRunner或SpringRunner作为测试类的运行器,可以使我们方便地进行集成测试,测试Spring应用中的Bean。