Я пишу модульный тест для класса LogUtil, в котором LogUtil использует объект интерфейса (IServiceMgr). При выполнении тестового примера я получаю объект интерфейса, на который ссылаются, как NULL.
Вот мой фактический класс реализации:
public interface IServiceMgr {
public String fetchData();
}
public class DataServiceMngr implements IServiceMgr {
public String fetchData() {
return "DATA_FETCHED- LOG OUT";
}
}
public class LogoutUtil {
@Inject
private static IServiceMgr dataservice;
public static String LogOut() {
return dataservice.fetchData();
}
}
Вот мой пример модульного теста, который я написал:
private IServiceMgr serviceMgr;
@Before
public void setUp() throws Exception {
this.serviceMgr = PowerMockito.mock(IServiceMgr.class);
}
@Test
public void test() {
String expected = "DATA_FETCHED- LOG OUT";
String actual = LogoutUtil.LogOut();
//Verify(this.serviceMgr);
assertEquals(expected, actual);
}
Я получаю исключение нулевого указателя на return dataservice.fetchData (); Похоже, что при насмешке над IServiceMgr dataService не создается. Любая помощь, как решить эту проблему.
Спасибо