これは奇妙なものです。アスペクトが適用されているためにいくつかのテストが失敗したため、自動配線されたサービスが null になり、悪いことが続いています。問題は、テストで 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);
...
}
}
私は明らかに多くのコードを省略していますが、実際には、コントローラーがどのようにインスタンス化されているかを考えると、アドバイスを適用する方法がわかりません。