Вопрос

Я пытаюсь настроить и использовать Mockito в проекте GWT, и у меня возникают проблемы с его использованием на стороне клиента (в javascript). Я пытался добавить модуль и включить Mockito, но, похоже, не работает (много ошибок). Я также пытался сделать полную проверку из SVN и таким образом интегрировать GWT, те же ошибки. Как это должно быть сделано? Благодарю.

Это было полезно?

Решение

GWT-код, протестированный с помощью mocking framework (например, Mockito), запускается в JVM и не компилируется в JavaScript, очевидно Таким образом, любые реализации, связанные с JavaScript, должны быть смоделированы или заглушены с использованием фиктивных объектов.

Одна архитектура, получившая широкое распространение в GWT и упрощающая тестирование, - это MVP (вариант MVC). MVP помещает большую часть значимой функциональности в классы, называемые докладчиками. Докладчики не полагаются на классы реализации GWT, но вместо этого зависят от интерфейсов GWT (в основном). Затем Mockito применяется для макетирования этих интерфейсов в классах презентаторов модульных тестов.

Этот блог полно примеров как для MVP в GWT, так и для тестирования с фиктивными объектами (EasyMock).

Другие советы

А теперь есть https://github.com/google/gwtmockito , который, вероятно, вам нужен необходимо.

Без дополнительных подробностей я могу лишь сказать, что в макетных средах интенсивно используются динамические прокси и генерация кода во время выполнения, которая не будет скомпилирована GWT.

Лучше всего использовать эти макеты в простых тестах JUnit.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top