Oto samouczek wideo
Wprowadzenie
W tym samouczku przejdziemy przez proces konfiguracji automatycznych testów dla AWX i ArgoCD za pomocą Jenkins, GitLab, Docker, Taiko i Gauge. Ten przewodnik zakłada, że masz podstawową wiedzę na temat tych technologii i masz je zainstalowane na swoich maszynach wirtualnych.
Wymagania wstępne
- Proxmox z trzema maszynami wirtualnymi: jedna dla Jenkins, jedna dla GitLab i jedna dla Docker.
- Podstawowa wiedza o Jenkins, GitLab, Docker, Taiko i Gauge.
- Zmiennie środowiskowe skonfigurowane do zarządzania poświadczeniami.
Krok 1: Skonfiguruj swoje środowisko
Upewnij się, że twoje maszyny wirtualne są skonfigurowane i połączone w następujący sposób:
- Jenkins VM: Będzie hostować Jenkins i zarządzać twoim potokiem budowania i testowania.
- GitLab VM: Będzie hostować twoje repozytoria kodu.
- Docker VM: Będzie uruchamiać kontenery Docker wymagane do testowania.
Krok 2: Utwórz skrypty testowe Taiko
Utwórz następujące skrypty testowe JavaScript za pomocą Taiko:
Skrypt testowy AWX (awx.js
)
|
|
Skrypt testowy ArgoCD (argocd.js
)
|
|
Wspólny skrypt (common.js
)
|
|
Krok 3: Utwórz pliki specyfikacji Gauge
Utwórz pliki specyfikacji definiujące kroki dla twoich testów:
Specyfikacja AWX (test-awx.spec
)
|
|
Specyfikacja ArgoCD (test-argocd.spec
)
|
|
Krok 4: Skonfiguruj potok Jenkins
Utwórz plik Jenkinsfile do zdefiniowania potoku Jenkins:
|
|
Krok 5: Uruchom swój potok
- Skonfiguruj Jenkins: Upewnij się, że twój serwer Jenkins jest skonfigurowany z niezbędnymi poświadczeniami i Docker jest poprawnie skonfigurowany.
- Uruchom potok: Uruchom potok, wybierając serwer i podając poświadczenia jako parametry.
- Przejrzyj wyniki: Sprawdź raporty i logi wygenerowane przez Taiko i Gauge, aby upewnić się, że wszystko działa poprawnie.
Podsumowanie konfiguracji końcowej
common.js
: Zapewnia, że przeglądarka jest otwierana i zamykana przed i po suite testów oraz zawiera niestandardowy pisarz zrzutów ekranu.test-awx.spec
itest-argocd.spec
: Definiują kroki logowania do AWX i ArgoCD, w tym nawigację, logowanie, weryfikację i czyszczenie zadań.- Skrypty testowe JavaScript:
awx.js
iargocd.js
obsługują rzeczywiste kroki testowe, wykorzystując zmienne środowiskowe do poświadczeń. - Jenkinsfile: Zarządza etapami potoku, w tym rozwiązywaniem adresów IP serwerów, inicjalizacją kontenera, ustawianiem zmiennych środowiskowych, uruchamianiem testów i archiwizowaniem artefaktów.
Ta konfiguracja zapewnia solidne i zautomatyzowane środowisko testowe, zapewniając spójność i efektywność twoich procesów testowych.
Śmiało korzystaj z tego samouczka do automatyzacji własnych procesów testowych i dostosuj kroki w miarę potrzeby do swoich specyficznych wymagań.