gentleman-e2e
Testuj instalator Gentleman.Dots w izolowanych kontenerach Docker – szybko i niezawodnie.
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Gentleman-e2e to zestaw wzorców testowania end-to-end dla instalatora Gentleman.Dots, oparty na Dockerze. Skill zawiera gotowe szablony skryptów testowych, struktury Dockerfile'i dla różnych platform oraz funkcje logowania, które ułatwiają pisanie i debugowanie testów instalacji. Używaj go, gdy dodajesz nowe testy dla funkcji, tworzysz obrazy Docker dla nowych systemów operacyjnych, modyfikujesz skrypty E2E lub diagnozujesz błędy instalacji. Wszystkie testy działają w trybie nieinteraktywnym, co gwarantuje powtarzalność i automatyzację.
Jak używać
Sklonuj repozytorium Gentleman.Dots i przejdź do katalogu skills/gentleman-e2e. Skill zawiera gotowe wzorce dla testów E2E i Dockerfile'i – nie wymaga dodatkowej instalacji, pracuje jako szablon kodu.
Gdy chcesz dodać nowy test, otwórz plik e2e_test.sh i użyj dostarczonego wzorca: zdefiniuj funkcję test_nazwa_funkcji(), która loguje co testujesz (log_test), a następnie sprawdza warunek i raportuje wynik (log_pass lub log_fail). Funkcje logowania automatycznie liczą testy zaliczone i niezaliczone.
Dla każdej nowej platformy (np. Ubuntu, Fedora) utwórz Dockerfile w katalogu e2e/, bazując na dostarczonym szablonie. Zainstaluj zależności systemowe, utwórz użytkownika testowego bez uprawnień root, skopiuj binarny instalator i skrypt testowy, a następnie ustaw CMD na uruchomienie e2e_test.sh.
W skryptach testowych zawsze używaj flagi --non-interactive, aby testy działały bez interakcji użytkownika i mogły być uruchamiane automatycznie w pipeline'ach CI/CD.
Zbuduj obraz Docker poleceniem docker build -f e2e/Dockerfile.nazwa_platformy -t gentleman-test:nazwa_platformy . i uruchom testy poleceniem docker run gentleman-test:nazwa_platformy. Logi z kolorami (zielony dla zaliczonych, czerwony dla niezaliczonych) pokażą wyniki każdego testu.
Gdy debugujesz błędy instalacji, dodaj nowe testy dla backup/restore lub modyfikuj istniejące – skill zapewnia spójną strukturę logowania i raportowania, dzięki czemu łatwo śledzisz, które kroki się powiodły, a które zawaliły.