Rozpoczynanie testowania w systemach ciągłej integracji (CI)

Laboratorium Firebase można wykorzystać przy tworzeniu aplikacji przy użyciu (CI). Systemy ciągłej integracji pozwalają automatycznie kompilować i testować aplikację przy każdym sprawdzaniu aktualizacji jej kodu źródłowego.

Używanie Laboratorium Firebase z Jenkins CI

W tej sekcji dowiesz się, jak korzystać z Laboratorium Jenkins CI.

Wymagania

Aby korzystać z Laboratorium Firebase razem z Jenkinsem, musisz ukończyć następujące kroki:

  1. Skonfiguruj gcloud. Postępuj zgodnie z instrukcjami podanymi na stronie Korzystanie z Laboratorium Firebase z poziomu wiersza poleceń gcloud aby utworzyć projekt Firebase i skonfigurować lokalny pakiet SDK Google Cloud dla środowiska.

  2. Utwórz i autoryzuj konto usługi. Konta usługi nie podlegają zasadom na sprawdzanie spamu lub prompty captcha, co mogłoby w inny sposób zablokować CI do tworzenia kampanii. Utwórz konto usługi z rolą Edytujący w Konsola Google Cloud i aktywuj je (zobacz dokumentację gcloud authactivate-service-account ).

  3. Włącz wymagane interfejsy API. Po zalogowaniu się przy użyciu konta usługi: w sekcji stronę z biblioteką interfejsów API w Google Developers Console, włączyć interfejsy Google Cloud Testing API i Cloud Tool Results API; Do włącz te interfejsy API, wpisz te nazwy w polu wyszukiwania u góry w konsoli, a następnie kliknij Włącz API na stronie przeglądu tego interfejsu API.

Instalowanie i konfigurowanie Jenkinsa

Jenkins CI możesz zainstalować i skonfigurować w systemie Linux lub Windows. Pewne szczegóły dotyczące ten przewodnik dotyczy instalowania i uruchamiania Jenkins CI w systemie Linux, w tym ukośników (/) w ścieżkach plików.

Aby pobrać i zainstalować Jenkinsa na komputerze z systemem Linux lub Windows, wykonaj te czynności: zapoznaj się z instrukcjami dotyczącymi instalowania Jenkinsa. Po instalując Jenkinsa, postępuj zgodnie z instrukcjami Uruchamianie i uzyskiwanie dostępu do Jenkinsa aby dokończyć konfigurację i uzyskać dostęp do panelu Jenkins.

Konfigurowanie globalnych ustawień zabezpieczeń

Jenkins nie ma skonfigurowanych uwierzytelniania użytkowników i kontroli dostępu, gdy jest pierwsza instalowana. Zanim zaczniesz używać Jenkinsa z Laboratorium Firebase, skonfiguruj globalne ustawienia zabezpieczeń w celu wymuszania kontroli dostępu i uwierzytelniania użytkowników.

Aby skonfigurować globalne ustawienia zabezpieczeń:

  1. Otwórz panel Jenkins na serwerze. W tym celu przejdź do http://<nazwaserwera>:8080, gdzie <nazwaserwera> to nazwa komputera, na którym zainstalowano Jenkinsa.
  2. W panelu Jenkins kliknij Manage Jenkins (Zarządzaj Jenkinsem), a następnie kliknij Skonfiguruj zabezpieczenia globalne
  3. Na stronie Skonfiguruj zabezpieczenia globalne kliknij Włącz zabezpieczenia. kliknij Zapisz.

Więcej informacji o konfigurowaniu ustawień zabezpieczeń dla Jenkinsa znajdziesz w artykule Szybkie i proste zabezpieczenia Standardowa konfiguracja zabezpieczeń, oraz Zabezpieczanie Jenkinsa

Tworzenie projektu Jenkinsa

Następnie utwórz projekt do testowania ciągłej integracji Twojej aplikacji w Laboratorium Firebase.

Tworzenie projektu Jenkinsa

  1. Otwórz panel Jenkins na serwerze. W tym celu przejdź do http://<nazwaserwera>:8080, gdzie <nazwaserwera> to nazwa komputera, na którym zainstalowano Jenkinsa.
  2. W panelu Jenkins kliknij New Item (Nowy element).
  3. Wpisz nazwę projektu w polu Nazwa elementu:
    • Wybierz Projekt Freestyle, aby utworzyć projekt wykorzystujący jedną kompilację. konfiguracji.
    • Wybierz Utwórz projekt z wieloma konfiguracjami, aby utworzyć projekt, który działa w wielu różnych konfiguracjach kompilacji. Jeśli planujesz tworzyć z aplikacją o różnych konfiguracjach kompilacji (wiele języków, wielu poziomów interfejsu API Androida itp.), projekt z wieloma konfiguracjami jest najlepszy wybór.
  4. Kliknij Zapisz.

Po utworzeniu projektu w przeglądarce wyświetli się strona główna Twojego projektu w projektach AI.

Dodaj kontrolę wersji i kroki kompilacji Gradle

Ta sekcja opisuje, jak zintegrować Jenkinsa z systemami kontroli wersji np. GitHub, i jak dodać kroki kompilacji Gradle w celu tworzenia pakietów APK z kodu źródłowego.

Integracja z GitHubem i innymi systemami kontroli wersji

Jeśli do zarządzania kodem źródłowym używasz GitHuba lub innego systemu kontroli wersji dla Twojej aplikacji możesz skonfigurować Jenkinsa tak, aby uruchamiać automatyczne kompilacje i testować przy każdym zameldowaniu aktualizacji aplikacji. Możesz też skonfigurować Jenkins, który będzie okresowo uruchamiać kompilacje.

Aby dowiedzieć się więcej o konfigurowaniu kompilacji w Jenkinsie, zapoznaj się z artykułem Konfigurowanie automatycznych kompilacji

Dodawanie kroków kompilacji Gradle w celu ponownego skompilowania pakietów APK

Jeśli do zarządzania kodem źródłowym aplikacji używasz systemu kontroli wersji, musisz uwzględnić krok kompilacji Gradle, aby za każdym razem tworzyć nowe pliki binarne APK pobiera kod źródłowy z systemu kontroli wersji.

  1. Dodaj krok kompilacji, aby uruchomić w katalogu głównym te polecenia aplikacja:

    ./gradlew :app:assembleDebug
    ./gradlew :app:assembleDebugAndroidTest
    

  2. Dodaj krok kompilacji, aby używać pakietów APK utworzonych przez Gradle podczas testowania w Test Lab. Możesz użyć tej ścieżki jako ścieżki <local_server_path> w podanym poniżej przykładzie skryptu powłoki, gdzie <AppFolder> to folder projektu Android Studio na potrzeby aplikacja:

    <AppFolder>/app/build/outputs/apk
    

Dodawanie kroków kompilacji Test Lab do Jenkinsa

Teraz możesz dodać krok kompilacji do Jenkinsa, aby uruchomić Laboratorium za pomocą z wiersza poleceń gcloud.

Dodawanie kroku kompilacji za pomocą gcloud

  1. Na stronie głównej projektu kliknij Skonfiguruj.
  2. Na stronie Konfiguracja projektu przewiń w dół do sekcji Tworzenie. a następnie z menu Dodaj krok kompilacji wybierz Wykonaj powłokę.

  3. W oknie Jenkins Execute shell Command wpisz to polecenie: Zastąp fragment <local_server_path> ścieżką do przykładowej aplikacji w serwer <app_apk> pakietu APK aplikacji oraz <app_test_apk> dla testowego pakietu APK Twojej aplikacji:

    gcloud firebase test android run --app <local_server_path>/<app_apk>.apk
    --test <local_server_path>/<app_test_apk>.apk
    

Analiza wyników testu

Gdy Laboratorium zakończy testowanie aplikacji, możesz sprawdzić test w konsoli Firebase ani w tabeli Google Cloud Storage w do swojego projektu. Możesz też dodać gsutil w powyższego polecenia powłoki, aby skopiować dane wyników testu na komputer lokalny. Więcej informacji: Analizowanie wyników Laboratorium Firebase

Tryb ciągłej integracji z innymi systemami CI

Aby dowiedzieć się, jak używać Laboratorium Firebase z innymi systemami CI, zapoznaj się z: jego dokumenty: