这是一个奇怪的。我有一些测试失败,因为正在应用一个方面,所以自动装配服务为空,随之而来的是坏事。问题是我无法理解这个方面是如何被应用的,因为在测试中我用 new 构造了被测对象。
@RunWith(MockitoJUnitRunner.class)
public class TheControllerTest {
@Spy
private TheController controller = new TheController();
@Mock
private HttpServletRequest request;
@Mock
private ConfigService configService;
....
@Before
public void setup() {
controller.setConfigService(configService);
....
}
@Test
public void testGetAccountsList() throws Exception {
Mockito.when(accountService.getAllAccounts()).thenReturn(Arrays.asList(account1, account2));
Map<String, Object> result = controller.getAccountsList(request);
...
}
}
我显然省略了很多代码,但实际上,我只是不明白,鉴于控制器是如何实例化的,它本可以应用建议。