Catch up on highlights from Firebase at Google I/O 2023. Learn more

Najlepsze praktyki dotyczące dystrybucji aplikacji Apple do testerów QA za pomocą CI/CD i fastlane

W tym dokumencie przedstawiono najlepsze praktyki korzystania z Firebase App Distribution i fastlane, aby procesy testowania przedpremierowego platformy Apple były trwałe i powtarzalne w środowisku CI/CD. Chociaż ten dokument koncentruje się na fastlane, opisujemy również rozwiązania dostępne za pośrednictwem konsoli Firebase, Firebase CLI i publicznego Firebase App Distribution API, aby zapewnić większą elastyczność. Opisujemy również limity wersji i testerów, dzięki czemu możesz zaplanować z wyprzedzeniem optymalne działanie.

Jeśli używasz również Androida, zobacz Najlepsze praktyki dotyczące dystrybucji aplikacji na Androida wśród testerów kontroli jakości przy użyciu CI/CD .

Zanim zaczniesz

Zanim zastosujesz sprawdzone metody 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 iOS.

  3. Kliknij Rozpocznij .

Zautomatyzuj przepływ pracy przy testowaniu wersji wstępnej za pomocą CI/CD

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

Użyj szybkiego pasa

Zintegruj dystrybucję aplikacji z potokiem CI/CD za pomocą fastlane, narzędzia typu open source, które automatyzuje tworzenie i wydawanie aplikacji na iOS i Androida. Tworząc i automatycznie dystrybuując najnowsze wersje do testerów, zapewniasz, że testerzy zawsze mają najnowszą wersję testową Twojej aplikacji.

Aby dowiedzieć się, jak zintegrować Dystrybucję aplikacji z Fastlane, zobacz Dystrybucja aplikacji iOS wśród testerów za pomocą Fastlane . Zobacz także laboratorium kodów , które przeprowadzi Cię przez proces integracji Fastlane.

Użyj interfejsu wiersza polecenia Firebase

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

Rozpowszechnij najnowszą kompilację iOS test.ipa , określając identyfikator aplikacji Firebase, opcjonalnie dodając informację o wersji i plik zawierający adresy e-mail testerów:

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

Aby dowiedzieć się więcej o korzystaniu z Firebase CLI do automatyzacji kompilacji, zobacz Dystrybucja aplikacji iOS wśród testerów za pomocą Firebase CLI .

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

Użyj wtyczki fastlane do dystrybucji aplikacji lub Firebase CLI z kontami usług, które korzystają z domyślnych poświadczeń aplikacji i pomagają w zarządzaniu CI. Konto usługi to rodzaj konta Google, które reprezentuje aplikacje, a nie użytkowników. Twój system ciągłej integracji 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 używasz federacji tożsamości obciążeń, możesz wygenerować i użyć pliku konfiguracji poświadczeń 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 powyżej limitu. Aby dowiedzieć się, jak zarządzać limitami wersji, zobacz Jak długo dostępne są wersje aplikacji?

Dodaj ten sam zestaw testerów do wielu wersji

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

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

Jeśli zarządzasz wieloma testerami, możesz zbiorczo dodawać i usuwać testerów za pomocą konsoli Firebase. Aby zautomatyzować dodawanie i usuwanie testerów, użyj Firebase CLI , fastlane lub publicznego Firebase App Distribution API .

Pamiętaj o ograniczeniach testera

Dystrybucja aplikacji ogranicza liczbę testerów, których można dodać do projektu Firebase lub grupy dystrybucji aplikacji. Jeśli przekroczysz te limity, nie będziesz mógł rozpowszechniać swojej 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?

Zarządzaj i automatycznie dodawaj nowe urządzenia testujące iOS

Aby pomóc Ci zarejestrować dodatkowe urządzenia do testowania systemu iOS, usługa App Distribution pomaga zarządzać urządzeniami do testowania systemu iOS w portalu Apple Developer Portal, informując Cię o nowych testerach urządzeń z systemem iOS za pośrednictwem wiadomości e-mail lub plików CSV. Aby dowiedzieć się więcej, zobacz Importowanie testerów z plików CSV . Możesz także programowo eksportować nowe urządzenia za pomocą fastlane .

Aby dowiedzieć się, jak skonfigurować akcję Fastlane, która automatycznie pobiera identyfikatory UDID, dodaje je do konsoli programisty Apple, a następnie odbudowuje aplikację i ją dystrybuuje, zobacz Szybsza dystrybucja przedpremierowych kompilacji systemu iOS dzięki dystrybucji aplikacji i fastlane .

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

Aby ułatwić rozpowszechnianie aplikacji wśród większej liczby testerów, zalecamy korzystanie z linków zapraszających. Łącze z zaproszeniem to unikalny adres URL, który umożliwia testerom wpisanie ich adresów e-mail w celu zarejestrowania się w celu przetestowania aplikacji. Umożliwienie użytkownikom dodawania się do listy testerów aplikacji to bezproblemowy sposób na zwiększenie bazy testów wewnętrznych.

Przykłady użycia linków zaproszeń obejmują firmowe programy dogfood, organizacje z dużymi zespołami ds. kontroli jakości oraz grupy 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, jest automatycznie dodawany do kolejnych wersji.

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

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

Po przesłaniu nowej wersji testerzy otrzymują powiadomienie e-mailem. Aby uzupełnić to powiadomienie, możesz skorzystać z następujących funkcji — linków do wydania 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 określoną wersję. Aby dowiedzieć się, jak korzystać z linków do wersji, zobacz Dystrybucja aplikacji na iOS wśród testerów za pomocą konsoli Firebase . Łącza te są również dostępne w naszych narzędziach wiersza poleceń (CLI) Firebase i fastlane do użytku 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 Firebase App Distribution iOS SDK, możesz wyświetlać alerty bezpośrednio w aplikacji swoim testerom, gdy dostępne są nowe kompilacje Twojej aplikacji. Aby dowiedzieć się, jak dodawać alerty w aplikacji, zobacz Powiadamianie testerów o nowych kompilacjach .

Automatycznie usuwaj dostęp dla testerów, którzy opuszczają firmę

Gdy wewnętrzny przepływ testów CI/CD zostanie uruchomiony, musisz upewnić się, że osoby, które opuszczają firmę, nie będą już miały dostępu do twoich wewnętrznych kompilacji. Aby pomóc Ci zarządzać dostępem testerów do kompilacji, Dystrybucja aplikacji udostępnia następujące opcje: