Я создал бы метод как:
Image openImage(string filename);
, в котором я обрабатываю исключение. Если возвращенное значение является Пустым, существует недопустимое имя файла / тип.
Код GWT, протестированный с помощью имитирующего фреймворка (например, Mockito), работает в JVM и, очевидно, не компилируется в JavaScript. Таким образом, любые реализации, связанные с JavaScript, должны быть имитированы или заглушены с использованием фиктивных объектов.
Одной из архитектур, получивших широкое распространение в GWT и упрощающей тестирование, является MVP (вариант MVC). MVP помещает большую часть значимых функций в классы, называемые презентаторами. Презентаторы не полагаются на классы реализации GWT, а вместо этого зависят от интерфейсов GWT (в основном). Затем Mockito применяется для имитации / заглушки этих интерфейсов для классов презентаторов модульных тестов.
Этот блог полон примеров как MVP в GWT, так и тестирования с использованием имитирующих объектов (EasyMock).
Не вдаваясь в подробности, я могу только сказать, что фреймворки имитации интенсивно используют динамические прокси и генерацию кода времени выполнения, который , а не будет компилироваться GWT.
Ваш лучше всего использовать эти макеты в простых тестах JUnit.