Najlepsze praktyki dystrybucji aplikacji na Androida do testerów kontroli jakości za pomocą CI/CD

W tym dokumencie przedstawiono najlepsze praktyki korzystania z Firebase App Distribution, aby zapewnić trwałość i powtarzalność procesów testowania przedpremierowych wersji Androida w środowisku CI/CD. Rozwiązania obejmują Gradle i Fastlane, ale aby zapewnić jeszcze większą elastyczność, uwzględniamy także rozwiązania dostępne za pośrednictwem konsoli Firebase, interfejsu wiersza polecenia Firebase i publicznego interfejsu API dystrybucji aplikacji Firebase. Opisujemy także limity wersji i testerów, dzięki czemu możesz zaplanować z wyprzedzeniem optymalne wrażenia.

Jeśli korzystasz również z platform Apple, zobacz Najlepsze praktyki dotyczące dystrybucji aplikacji Apple wśród testerów kontroli jakości przy użyciu CI/CD i Fastlane .

Zanim zaczniesz

Zanim wdrożysz najlepsze praktyki opisane w tym dokumencie, pamiętaj o włączeniu dystrybucji aplikacji w konsoli Firebase dla każdej aplikacji . Jeśli nie włączyłeś dystrybucji aplikacji, pojawi się błąd 404.

Aby włączyć dystrybucję aplikacji, wykonaj następujące kroki:

  1. Otwórz stronę Dystrybucja aplikacji w konsoli Firebase.
  2. Wybierz swoją aplikację na Androida.
  3. Kliknij opcję Rozpocznij .

Biorąc pod uwagę, że pakiety aplikacji na Androida (AAB) stają się najpopularniejszym formatem pakietów na Androida, zalecamy skonfigurowanie możliwości dystrybucji pakietów AAB wśród testerów poprzez połączenie z Google Play .

Zautomatyzuj przepływ pracy podczas testów przed wydaniem, korzystając z potoku CI/CD

Jeśli chcesz zautomatyzować tworzenie i udostępnianie aplikacji swoim testerom i korzystasz z CI/CD, zalecamy użycie Fastlane lub Gradle . Inną opcją jest użycie Firebase CLI , który umożliwia dostęp do szerokiej gamy produktów Firebase.

Skorzystaj z szybkiego pasa

Zintegruj dystrybucję aplikacji ze swoim potokiem CI/CD za pomocą Fastlane, narzędzia typu open source, które automatyzuje tworzenie i wydawanie aplikacji na iOS i Androida. Automatycznie budując i dystrybuując najnowsze wersje wśród testerów, masz pewność, że testerzy zawsze mają najbardziej aktualną wersję testową Twojej aplikacji.

Aby dowiedzieć się, jak zintegrować dystrybucję aplikacji z fastlane, zobacz Dystrybucja aplikacji na Androida wśród testerów za pomocą fastlane .

Użyj Gradle'a

Użyj Gradle, aby zintegrować dystrybucję aplikacji z procesem kompilacji systemu Android za pomocą wtyczki App Distribution Gradle. Wtyczka umożliwia określenie testerów i informacji o wersji w pliku build.gradle aplikacji, co umożliwia skonfigurowanie dystrybucji dla różnych typów kompilacji i wariantów aplikacji.

Aby dowiedzieć się, jak zintegrować dystrybucję aplikacji z Gradle, zobacz Dystrybucja aplikacji na Androida wśród testerów za pomocą Gradle .

Użyj interfejsu wiersza polecenia Firebase

Użyj narzędzi Firebase CLI udostępnianych przez App Distribution, aby programowo dystrybuować kompilacje wśród testerów. Możesz określić testerów i informacje o wersji dla kompilacji.

Rozpowszechniaj najnowszą wersję Androida, podając identyfikator aplikacji Firebase App ID, opcjonalnie dodając informację o wersji i plik zawierający e-maile testerów:

firebase appdistribution:distribute test.aab  \
    --app 1:1234567890:android:0a1b2c3d4e5f67890  \
    --release-notes "Bug fixes and improvements" --testers-file testers.txt

Aby dowiedzieć się więcej o używaniu interfejsu wiersza polecenia Firebase do automatyzacji kompilacji, zobacz Dystrybucja aplikacji na Androida wśród testerów za pomocą interfejsu wiersza polecenia Firebase .

Użyj poświadczeń usługi do uwierzytelnienia

Użyj wtyczki Fastlane App Distribution, wtyczki Gradle lub interfejsu wiersza polecenia Firebase z kontami usług. Konto usługi to rodzaj konta Google reprezentującego aplikacje (a nie użytkowników). Twój system CI może używać kont usług do uruchamiania obciążeń związanych z dystrybucją aplikacji. Aby dowiedzieć się więcej, zobacz Uwierzytelnianie za pomocą konta usługi .

Jeśli korzystasz z federacji tożsamości obciążeń, możesz wygenerować plik konfiguracyjny poświadczeń i używać go zamiast klucza konta usługi.

Pamiętaj o limitach wydań

Dystrybucja aplikacji obsługuje maksymalnie 1000 wydań na aplikację. Oznacza to, że po przekroczeniu limitu wydań usługa App Distribution automatycznie usuwa najstarsze wydania przekraczające limit. Aby dowiedzieć się, jak zarządzać limitami wersji, zobacz Jak długo są dostępne wersje aplikacji?

Dodaj ten sam zestaw testerów do wielu wydań

Jeśli chcesz dodać dużą liczbę testerów do swoich wydań, skorzystaj z funkcji zbiorczego zarządzania testerami oferowanej przez App Distribution.

Zalecamy użycie grup w celu dodania tych samych testerów do wielu wersji. Grupa działa jak lista kontroli dostępu; gdy usuniesz testera z grupy, utraci on dostęp do wszystkich wydań dystrybuowanych do tej grupy. Aby dowiedzieć się więcej, zobacz Dodawanie i usuwanie testerów z grupy .

Jeśli masz wielu testerów do zarządzania, możesz zbiorczo dodawać i usuwać testerów za pomocą konsoli Firebase. Aby zautomatyzować dodawanie i usuwanie testerów, użyj interfejsu CLI Firebase , Fastlane , Gradle lub publicznego interfejsu API dystrybucji aplikacji Firebase .

Pamiętaj o ograniczeniach testera

Dystrybucja aplikacji ogranicza liczbę testerów, których możesz dodać do projektu Firebase lub grupy dystrybucji aplikacji. Po przekroczeniu tych limitów nie będzie można rozpowszechniać aplikacji wśród dodatkowych testerów. Aby dowiedzieć się więcej o limitach testerów, zobacz Czy istnieją ograniczenia dotyczące dodawania testerów do mojej aplikacji?

Umożliwiaj potencjalnym testerom samodzielną rejestrację do testów

Aby ułatwić rozpowszechnianie aplikacji wśród większej liczby testerów, zalecamy użycie linków z zaproszeniem. Link z zaproszeniem to unikalny adres URL, który umożliwia testerom wprowadzenie adresów e-mail w celu zarejestrowania się w celu przetestowania aplikacji. Umożliwienie użytkownikom dodawania się do listy testerów aplikacji to płynny sposób na zwiększenie wewnętrznej bazy testerów.

Przykłady użycia linków z zaproszeniem obejmują firmowe programy testowania, organizacje z dużymi zespołami ds. kontroli jakości i grupy programistów, które chcą, aby klienci indywidualni mogli kontrolować dostęp testerów.

Zalecamy utworzenie linku z zaproszeniem do grupy. Każdy tester, który zarejestruje się za pomocą linku zaproszenia, zostanie automatycznie dodany do kolejnych wersji.

Aby dowiedzieć się więcej, zobacz Tworzenie linków z zaproszeniem oraz Dodawanie i usuwanie testerów z grupy .

Upewnij się, że testerzy testują wersję, na której Ci zależy

Gdy zostanie przesłana nowa wersja, testerzy zostaną powiadomieni e-mailem. Aby uzupełnić to powiadomienie, możesz skorzystać z następujących funkcji – linków do wersji i alertów w aplikacji – aby mieć pewność, że testerzy testują konkretną wersję aplikacji, na której Ci zależy:

  • Linki do wersji: użyj tej funkcji, jeśli chcesz udostępnić testerom konkretną wersję. Aby dowiedzieć się, jak korzystać z linków do wersji, zobacz Dystrybucja aplikacji na Androida wśród testerów za pomocą konsoli Firebase . Linki te są również dostępne w naszych narzędziach wiersza poleceń Firebase , Fastlane i Gradle (CLI), które można wykorzystać z narzędziami do automatyzacji kompilacji.
  • Alerty w aplikacji: użyj tych alertów, jeśli chcesz mieć pewność, że testerzy testują najnowszą wersję Twojej aplikacji. Integrując pakiet SDK Firebase App Distribution na Androida, możesz wyświetlać alerty bezpośrednio w aplikacji swoim testerom, gdy dostępne będą nowe wersje Twojej aplikacji. Aby dowiedzieć się, jak dodać alerty w aplikacji, zobacz Powiadamianie testerów o nowych kompilacjach .

Automatycznie odbieraj dostęp testerom, którzy odchodzą z firmy

Po uruchomieniu wewnętrznego procesu testów CI/CD musisz upewnić się, że osoby odchodzące z firmy nie mają już dostępu do Twoich wewnętrznych kompilacji. Aby pomóc Ci zarządzać dostępem testerów do kompilacji, usługa App Distribution udostępnia następujące opcje: