2015-12-23 10 views
6

Я хочу настроить единую тестовую среду для моего продукта. У меня есть сборка веб-приложений на nginx в Lua, которые используют mysql и redis. Я думаю, что докер будет хорош для этого, хотя я новичок в докерах. Мое приложение работает на сервере centos (производственный сервер).установка тестового блока докеры

Я планирую установить другой контейнер для mysql, redis и webapp, а затем написать приложение UT (модульный тест для Lua с использованием Busted framework) в моем mac (Моя машина разработки MAC) или VM для его проверки. Приложение UT будет разговаривать с контейнером докеров nginx, а nginx будет использовать контейнер mysql и redis. Это хорошо ? Если да, может ли кто-нибудь мне помочь, как это сделать? может быть, хорошая ссылка? Если нет, что может быть лучше. Я уже пробовал использовать бродягу, но это заняло слишком много времени, которое не должно быть в моем случае UT.

+0

спасибо за редактирование @NicolBolas –

+0

Я боюсь, что вы смешиваете терминологию здесь. Единичные тесты - это тесты, предназначенные для проверки компонента отдельно.То, что вы пытаетесь запустить, - это интеграционные тесты, в которых вы проверяете, как все работает вместе. – Akira

+0

@Akira я согласен. На самом деле, я пытаюсь настроить среду для тестирования интеграции вместе с установкой тестового тестирования (с использованием перегруженной структуры). Это поможет мне полностью протестировать мое приложение. –

ответ

2

Для примера, как мы настраиваем наш шаблон проекта, вы можете посмотреть phundament/app и его установку тестирования.

Мы используем докционированную установку GitLab с customized runner, которая может выполнять docker-compose.

Примечание! Сам бегун работает на отдельном хостеле Docker.

Мы используем docker-compose.yml для определения services в стеке с настройками для development и testing.

CI configuration оптимизирован для обработки нескольких параллельных тестов изолированных стеков, это делается только путем указания настраиваемого COMPOSE_PROJECT_NAME.

Некоторая подробная документация о нашем процессе тестирования и полезная информация о docker-compose и докционированный CI.

Наконец, Travis CI также поддерживает Докер, так как некоторое время, но я не проверял этот подход на всех ,

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