Как сделать архитектуру для интеграционных тестов и микросервисов в Node.js - PullRequest
0 голосов
/ 17 октября 2018

Я создал приложение для микросервиса.

Каждый микросервис проходит модульное тестирование.

Теперь, прежде чем я начну создавать интерфейс и более сложные интеграции, я хотел бы создать серверы интеграции с использованием Docker.

Я знаю, как создать docker-compose fie, который будет крутить все мои сервисы для тестирования, но я не знаю, как вы запускаете интеграционные тесты?

вы создаете другой сервис для тестирования, изатем внутри вы вызываете jest /integration или вы подходите к нему с помощью команд докера?

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

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

1 Ответ

0 голосов
/ 19 октября 2018

Выполнение тестов внутри контейнера дает некоторые дополнительные преимущества, такие как отсутствие необходимости устанавливать зависимости для тестов в локальной среде и изоляция потенциала для специфических проблем среды.

Дополнительная функция Docker, которую вы можетеРассмотрим многоэтапные сборки для образа развертывания и отдельных образов, которые включают тестовые зависимости, которые выполняются как для модульных, так и для интеграционных тестов.Таким образом образ, который развертывается, меньше и не содержит потенциальных ненужных тестовых зависимостей.

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

...