私はjunitとmockitoを初めて使用するので、問題は明らかなものかもしれません。「テスト オブジェクト」内でローカルにインスタンス化されたオブジェクトが null であるという問題があります。この特定のセクションで呼び出される private / protected / final メソッドはないため、それは問題ではありません。また、他のプライベート メソッド呼び出しにも PowerMockito を使用しています。
テストするクラスのセクション: null ポインター例外が user.getId() でスローされます - ここの最後の行:
SupportProdUpdatesImpl pAdd = new SupportProdUpdatesImpl();
Add.setQueryProcssStatus(form.getQueryProcssStatus());
pAdd.setQueryTitle(form.getQueryTitle().toUpperCase());
pAdd.setQueryType(form.getQueryType().toUpperCase());
logger.debug("*** query String = " + form.getQuerySQL() );
pAdd.setQuerySQL(StringUtils.trim(form.getQuerySQL()));
pAdd.setMakerId(user.getId());
私のテストでは、
User user = mock(User.class) // interface of user
when(user.getId()).thenReturn(new Integer(111)));
私が間違っていることを理解していません..どんな助けもいただければ幸いです!
ありがとう