Sprawdzone metody udostępniania aplikacji na Androida testerom kontroli jakości za pomocą CI/CD

W tym dokumencie przedstawiamy sprawdzone metody korzystania z Firebase App Distribution, które pozwolą Ci uczynić procesy testowania przed wydaniem na Androida trwałymi i powtarzalnymi w środowisku CI/CD. Rozwiązania te obejmują Gradle i fastlane, ale aby zapewnić Ci jeszcze większą elastyczność, uwzględniliśmy też rozwiązania dostępne w konsoli Firebase, wierszu poleceń Firebase i publicznym interfejsie API App Distribution Firebase. Opisujemy też limity wersji i testerów, aby umożliwić Ci optymalne planowanie.

Jeśli korzystasz też z platform Apple, zapoznaj się z artykułem Sprawdzone metody rozpowszechniania aplikacji Apple wśród testerów QA za pomocą CI/CD i fastlane.

Zanim zaczniesz

Zanim zastosujesz sprawdzone metody opisane w tym dokumencie, włącz App Distribution w konsoli Firebase dla każdej aplikacji. Jeśli nie włączysz App Distribution, pojawi się błąd 404.

Aby włączyć App Distribution, wykonaj te czynności:

  1. Otwórz stronę App Distribution w konsoli Firebase.
  2. Wybierz aplikację na Androida.
  3. Kliknij Rozpocznij.

Pakiety aplikacji na Androida (AAB) stają się najpopularniejszym formatem pakietów na Androida, dlatego zalecamy skonfigurowanie możliwości dystrybucji pakietów AAB do testerów przez połączenie z Google Play.

Automatyzowanie procesu testowania przedpremierowego za pomocą potoku CI/CD

Jeśli chcesz zautomatyzować kompilowanie i publikowanie aplikacji dla testerów i korzystasz z CI/CD, zalecamy użycie fastlane lub Gradle. Inną opcją jest użycie FirebaseCLI, który umożliwia dostęp do szerokiej gamy usług Firebase.

Używanie fastlane

Zintegruj App Distribution z potokiem CI/CD za pomocą fastlane, czyli narzędzia open source, które automatyzuje kompilowanie i publikowanie aplikacji na iOS i Androida. Kompilując i rozprowadzając najnowsze wersje do testów automatycznie, zapewnisz, że testerzy będą zawsze mieli najnowszą wersję testową aplikacji.

Aby dowiedzieć się, jak zintegrować App Distribution z fastlane, przeczytaj artykuł Rozpowszechnianie aplikacji na Androida za pomocą fastlane.

Używanie Gradle

Aby zintegrować App Distribution z procesem kompilacji Androida, użyj Gradle i wtyczki Gradle App Distribution. W pluginie możesz określić testerów i notatki o wersji w pliku build.gradle aplikacji, co umożliwia konfigurowanie dystrybucji dla różnych typów kompilacji i wariantów aplikacji.

Aby dowiedzieć się, jak zintegrować App Distribution z Gradle, przeczytaj artykuł Rozpowszechnianie aplikacji na Androida wśród testerów za pomocą Gradle.

Użyj interfejsu wiersza poleceń Firebase.

Aby rozpowszechniać kompilacje wśród testerów za pomocą programów, użyj narzędzi wiersza poleceń Firebase udostępnianych przez App Distribution. Możesz określić testerów i notatki do wersji.

Udostępnij najnowszą wersję na Androida, podając identyfikator aplikacji Firebase i opcjonalnie dodając informacje o wersji oraz plik zawierający adresy e-mail testerów:

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

Więcej informacji o automatyzacji kompilacji za pomocą interfejsu wiersza poleceń Firebase znajdziesz w artykule Rozpowszechnianie aplikacji na Androida wśród testerów za pomocą interfejsu wiersza poleceń Firebase.

Używanie danych uwierzytelniających usługi

Użyj App Distribution wtyczki fastlane, wtyczki Gradle lub interfejsu wiersza poleceń Firebase z kontami usługi. Konto usługi to rodzaj konta Google, które reprezentuje aplikacje (a nie użytkowników). Twój system CI może używać kont usług do wykonywania zadań App Distribution. Więcej informacji znajdziesz w artykule Uwierzytelnianie za pomocą konta usługi.

Jeśli używasz federacji tożsamości zadań, zamiast klucza konta usługi możesz wygenerować i użyć pliku konfiguracji danych logowania.

Pamiętaj o limitach dotyczących publikowania

App Distribution obsługuje maksymalnie 1000 wersji na aplikację. Oznacza to, że gdy przekroczysz limit wersji, App Distribution automatycznie usunie najstarsze wersje, które przekroczyły limit. Aby dowiedzieć się, jak zarządzać limitami wersji, przeczytaj artykuł Jak długo wersje aplikacji są dostępne?.

Dodawanie tego samego zestawu testerów do wielu wersji

Jeśli chcesz dodać do wersji dużą liczbę testerów, użyj funkcji zbiorczego zarządzania testerami w App Distribution.

Zalecamy dodawanie tych samych testerów do wielu wersji za pomocą grup. Grupa działa jak lista kontroli dostępu. Gdy usuniesz z grupy testera, straci on dostęp do wszystkich wersji rozpowszechnianych w tej grupie. Więcej informacji znajdziesz w artykule Dodawanie i usuwanie testerów z grupy.

Jeśli masz wielu testerów, możesz dodawać i usuwać ich zbiorczo za pomocą konsoli Firebase. Aby zautomatyzować dodawanie i usuwanie testerów, użyj FirebaseCLI, fastlane, Gradle lub publicznego interfejsu API App DistributionFirebase.

Pamiętaj o ograniczeniach dotyczących testerów

App Distribution ogranicza liczbę testerów, których możesz dodać do projektu Firebase lub grupy App Distribution. Po przekroczeniu tych limitów nie będzie można rozpowszechniać aplikacji wśród dodatkowych testerów. Więcej informacji o limitach dotyczących testowania znajdziesz w artykule Czy istnieją limity dotyczące dodawania testujących do aplikacji?

Umożliwienie potencjalnym testerom samodzielnego rejestrowania się na testy

Aby ułatwić rozpowszechnianie aplikacji większej liczbie testerów, zalecamy używanie linków zaproszenia. Link do zaproszenia to unikalny adres URL, który pozwala testerom wpisać adresy e-mail, aby zarejestrować się do testowania aplikacji. Umożliwienie użytkownikom dodawania się do listy testerów aplikacji to wygodny sposób na zwiększenie wewnętrznej bazy testów.

Linki do zaproszenia można stosować w przypadku programów testowania wewnątrz firmy, organizacji z dużymi zespołami ds. jakości oraz grup programistów, które chcą, aby poszczególni klienci mogli kontrolować dostęp testerów.

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

Więcej informacji znajdziesz w artykule o tworzeniu linków z zaproszeniemdodawaniu i usuwaniu testerów z grupy.

Upewnij się, że testerzy testują wersję, która Cię interesuje

Gdy prześlesz nową wersję, testerzy otrzymają e-maila z powiadomieniem. Aby uzupełnić to powiadomienie, możesz użyć tych funkcji – linków do wersji i alertów w aplikacji – aby mieć pewność, że testerzy będą testować konkretną wersję aplikacji, która Cię interesuje:

  • Linki do wersji: użyj tej funkcji, aby udostępnić testerom konkretną wersję. Informacje o tym, jak używać linków do wersji, znajdziesz w artykule Rozpowszechnianie aplikacji na Androida wśród testerów za pomocą konsoli Firebase. Te linki są też dostępne w narzędziach wiersza poleceń (CLI) Firebase, fastlaneGradle, które można używać z narzędziami automatyzacji kompilacji.
  • Alerty w aplikacji: używaj tych alertów, gdy chcesz mieć pewność, że testerzy testują najnowszą wersję aplikacji. Dzięki zintegrowaniu pakietu SDK App Distribution Firebase na Androida możesz wyświetlać alerty bezpośrednio w aplikacji testerom, gdy dostępne są nowe wersje aplikacji. Aby dowiedzieć się, jak dodawać alerty w aplikacji, przeczytaj artykuł Powiadomienie testerów o nowych wersjach aplikacji.

Automatyczne usuwanie dostępu testerów, którzy opuszczają firmę

Gdy proces testowania wewnętrznego CI/CD jest uruchomiony, musisz zadbać o to, aby osoby, które opuszczają firmę, nie miały już dostępu do wewnętrznych kompilacji. Aby ułatwić zarządzanie dostępem testerów do wersji, App Distribution udostępnia te opcje: