2016-10-18 4 views
0

Для нашего веб-приложения мы написали большую часть нашего кода внутри классов ресурсов. Теперь мы хотим провести тестирование веб-модуля с помощью тестов junit с помощью «Простых интеграционных тестов».В приложении для семян приложение может быть упаковано в веб-модуле?

Но мы можем проверить наши репозитории, а не поисковики и другую бизнес-логику с такой упаковкой.

Нужно ли нам переместить наш код из классов ресурсов в службы приложений, которые могут быть введены в модульные тесты? Если да, можем ли мы написать эти службы в веб-модуле? Обычно мы пишем эти службы в модуле приложения, но в этом случае у служб нет доступа к поисковым машинам, присутствующим в Интернете.

ответ

0

В ваших классах ресурсов должен быть только код, необходимый для предоставления API REST вашего приложения: нет бизнес-логики, нет логика приложения (использование), отсутствие доступа к данным. Класс ресурсов должен только использовать другие компоненты, такие как репозитории, сервисы и поисковики для достижения желаемого результата.

В SeedStack проектов, особенно если вы используете бизнес-структуру, рекомендуется, чтобы вы с уважением относится к модели слоя DDD:

  • слой домена, где выражается бизнес, агрегатами, содержащих объекты домена (объекты и объекты ценности) и сервисами домена.
  • Уровень приложения отвечает за управление рабочим процессом приложения, выполняющим варианты использования системы через службы приложений. Этот слой также может быть протестирован с помощью модульных тестов и простых тестов интеграции.
  • Интерфейсный слой обрабатывает взаимодействие с другими системами. В вашем случае это делается с ресурсами REST. Эти ресурсы могут полагаться на поисковые устройства, когда это необходимо для запроса базы данных.

Вы можете протестировать любой из этих компонентов с помощью модульных тестов и simple integration tests, за исключением ресурсов REST, поскольку они зависят от среды выполнения Web. Они могут быть протестированы только в Web integration tests (с аркиллианским).

Вы можете найти пример искателя, протестированного с помощью простых интеграционных тестов here и here.

 Смежные вопросы

  • Нет связанных вопросов^_^