Тестирование микросервиса, работающего с бинарными данными

Необходимо написать интеграционные и модульные тесты для микросервиса на NodeJS.

Сервис слушает очередь rabbitmq, получает ссылку на видео файл в удаленной файловой системе, перекодирует его в различные форматы с помощью пакета fluent-ffmpeg и отправляет в другую очередь ссылки на созданные файлы вместе с информацией о видео.

Есть ли способ покрыть этот сервис тестами? Допускается ли хранение в репозитории сервиса примеров видео, получаемых на вход? Куда сохранять файлы, созданные ffmpeg при тестировании?


Ответы (1 шт):

Автор решения: Georgy R.

Добро утро.

Есть ли способ покрыть этот сервис тестами?

Конечно.

Допускается ли хранение в репозитории сервиса примеров видео, получаемых на вход?

Видимо, вопрос о хранении тестовых данных. Тут как сами решите. Можно хранить на удаленном сервере и сливать перед прогоном, но это время. Вообще, думаю в данном случае стоит заморочиться и подготовить видео файлы не большой длины (и соответственно размера) и хранить их с кодом тестов.

Куда сохранять файлы, созданные ffmpeg при тестировании?

Можно сохранять в tmp. Прелесть в том, что после перезагрузки системы ненужные данные будут удалены.

→ Ссылка