2015-12-23 16 views
6

Chcę skonfigurować środowisko testowe urządzenia dla mojego produktu. Mam aplikację internetową zbudowaną na nginx w Lua, która używa mysql i redis. Myślę, że docker będzie na to dobrze, chociaż jestem nowy w docker. Moja aplikacja działa na serwerze centos (serwer produkcyjny).Konfiguracja testu stacji dokującej

Mam zamiar skonfigurować inny kontener dla mysql, redis i webapp, a następnie napisać aplikację UT (test jednostkowy dla Lua przy użyciu szkieletu Busted) w moim mac (Mój komputer programistyczny to MAC) lub VM, aby go przetestować. Aplikacja UT porozmawia z kontenerem docker nginx, a nginx użyje kontenera mysql i redis. Czy to jest dobre ? Jeśli tak, czy ktoś może mi doradzić, jak to zrobić? może jakiś dobry link? Jeśli nie, to może być lepszy sposób. Próbowałem już używać vagrant, ale to zajęło zbyt wiele czasu, który nie powinien być w moim przypadku UT.

+0

dzięki za edycję @NicolBolas –

+0

Obawiam się, że mieszanie terminów tutaj. Testy jednostkowe to testy zaprojektowane w celu sprawdzenia elementu w izolacji.Próbujesz uruchomić testy integracyjne, w których sprawdzasz, jak wszystko działa razem. – Akira

+0

@Akira zgadzam się. Właściwie próbuję skonfigurować środowisko do testów integracyjnych wraz z konfiguracją testów jednostkowych (z wykorzystaniem rozwidlonego środowiska). Pomoże mi dokładnie przetestować moją aplikację. –

Odpowiedz

2

Na przykład, jak konfigurujemy nasz szablon projektu, możesz zapoznać się z phundament/app i jego konfiguracją testową.

Używamy dokowanej instalacji GitLab z customized runner, która jest w stanie wykonać docker-compose.

Uwaga! Sam runner działa na osobnym hoście Docker.

Używamy docker-compose.yml do zdefiniowania services w stos z korektami dla development i testing.

Urządzenie CI configuration jest zoptymalizowane do obsługi wielu równoczesnych testów izolowanych stosów, można to zrobić po określeniu niestandardowego COMPOSE_PROJECT_NAME.

Kilka szczegółowych dokumentacji na temat naszego procesu testowania i użytecznych informacji na temat docker-compose i dokowania CI.

Wreszcie Travis CI obsługuje również Döcker od jakiegoś czasu, ale nie testowałem tego podejścia w ogóle .

Powiązane problemy