测试控制器时,我的单元测试失败。我期待200状态代码时得到404。我想webAppContextSetup无法识别控制器。 这是我的代码:
@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(classes = Application.class)
@WebAppConfiguration
@ContextConfiguration(classes = MyConfig.class)
public class MyControllerTest
{
@Before
public void setup()
{
MockitoAnnotations.initMocks(this);
mockMvc = MockMvcBuilders.webAppContextSetup(context).build();
}
mockMvc.perform(get("/locales?limit=1")).andExpect(status().isOk());
}
消息是"在DispatcherServlet中找不到带有URI [/ locales]的HTTP请求的映射,其名称为''""
这适用于实际应用程序。 感谢。
答案 0 :(得分:0)
尝试为包含控制器的包添加组件扫描:
@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(classes = Application.class)
@WebAppConfiguration
@ContextConfiguration(classes = MyConfig.class)
@ComponentScan("x.y.z")