我在正确配置 Spring Beans 时遇到问题。我的整个应用程序与 Spring 一起正常工作,我想添加 jUnit 测试。不幸的是,bean 没有正确注入(inject)。 我在同一模块中有两个目录。 我的整个应用程序都在里面:
/src/main/java/main/
它工作正常,我添加了 RestTest.java 和 BeanTestConfiguration.java 里面:
/src/test/java/main/
@SpringBootTest
@RunWith(Spring.Runner.class)
@ContextConfiguration(classes=BeanTestConfiguration.class)
class RestTest {
@Autowired
public String testString;
@Test
public void send() {
System.out.println(testString);
Assert.assertNotNull(testString);
}
}
并配置BeanTestConfiguration
@Configuration
public class BeanTestConfiguration {
@Bean
public String testString() { return new String("Hello"); }
}
不幸的是,当我对发送方法运行测试时,系统输出打印 null,并且 Assert 抛出失败。 我将 Spring 应用程序上下文添加到 IntelliJ 内的项目结构
最佳答案
谢谢大家的帮助。我发现我的进口有问题。我的 @Test 注释来自 jUnit 5,而我的 SpringRunner 内部注释来自 jUnit 4,因此 Spring 无法正常工作并且未注入(inject) Bean。
我想再次感谢大家。
关于java - Bean 未注入(inject) jUnit 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51634985/