因此,我有一个多maven模块项目,其中包含一个控制器模块和一个包含spring boot启动应用程序类的模块。
myApp -部署(模块)-控制器(模块)
在控制器模块中,我希望能够使用mockMvc测试它们
然而,当我运行它时,我得到了以下错误:
java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test我想要做的是仍然能够测试它,我可以创建一个测试应用程序并使用它吗?
@RunWith(SpringRunner.class)
@WebMvcTest(Controller.class)
@ActiveProfiles(Constants.TEST)
public class ControllerTest {
@Autowired
private MockMvc mockMvc;
@Test
public void contextLoads() {
assertNotNull(mockMvc);
}
}发布于 2019-02-22 21:11:26
你可以在你的测试包中创建一个"test config“类,如下所示:
@SpringBootApplication
public class TestConfig {
}我将此方法用于需要测试的自定义存储库或服务libe
来注释您的类。
@RunWith(SpringRunner.class)
@SpringBootTest
@AutoConfigureMockMvc然后你就可以
@Autowired
protected MockMvc mockMvc;以及你需要的所有其他东西。
希望这能有所帮助
https://stackoverflow.com/questions/54827381
复制相似问题