Это код сервлета. Я понятия не имею, как обмануть его насмешкой. Я создал mock objecs, такие как ServletConfig, LoginServiceFactory и LoginService, но я не знаю, как создать mock для Class.forName. Это вызванный статический метод и другие методы, такие как newInstance или getConstructor. Я попытался вызвать lsf.getClass(). NewInstance() ожидает в mock, но это не сработало. У вас есть идея, как его решить? Заранее спасибо.Отражение сервлета EasyMock
public void init(ServletConfig config) throws ServletException {
super.init(config);
try {
String loginServiceFactoryName = config
.getInitParameter("LoginServiceFactory");
LoginServiceFactory lsf = (LoginServiceFactory)
Class.forName(loginServiceFactoryName).getConstructor().newInstance();
UserDataBase db = lsf.getUserDataBase();
Encoder encoder = lsf.getEncoder();
loginService = new LoginService(db, encoder);
}