20/04/2022
I den hastigt udviklende verden af mobilapplikationer er kvalitet og stabilitet afgørende for succes. Appudviklere står ofte over for den udfordring at skulle teste deres apps på et utal af forskellige enheder, operativsystemversioner, skærmstørrelser og lokaliteter. Dette kan være en tidskrævende og ressourcekrævende proces. Heldigvis findes der kraftfulde værktøjer, der kan automatisere og strømline denne proces, og et af de mest effektive er Firebase Test Lab.

Firebase Test Lab er en skybaseret apptesttjeneste, der lader dig teste din app på en bred vifte af fysiske og virtuelle enheder. Det betyder, at du kan opdage fejl og inkonsistenser, før de når dine brugere, og dermed levere en langt bedre appoplevelse. I denne artikel vil vi dykke ned i, hvordan Firebase Test Lab fungerer, hvordan du kan bruge det til at teste dine Android- og iOS-apps, hvilke enheder der er tilgængelige, og meget mere.
Hvad er Firebase Test Lab, og hvordan fungerer det?
Firebase Test Lab er designet til at gøre apptestning mere effektiv og omfattende. Grundlæggende fungerer det ved at køre dine tests i et Google-datacenter, hvilket eliminerer behovet for at oprette og vedligeholde din egen testinfrastruktur. Processen er typisk som følger:
- Forbered din app: Først skal din app være klar til at blive testet. Dette indebærer ofte at sikre, at din applikationspakke (APK for Android, eller app-pakke for iOS) er korrekt bygget og indeholder de nødvendige testfiler, hvis du kører instrumenteringstests.
- Vælg en testtype: Firebase Test Lab understøtter forskellige testtyper, der passer til forskellige behov. For Android kan du køre instrumenteringstests (som Espresso, Robotium eller UI Automator 2.0), som er tests, du selv har skrevet for at udføre specifikke handlinger i din app. Alternativt kan du vælge en Robo-test, som er en automatisk test, der analyserer din apps brugergrænsefladestruktur og udforsker den ved at simulere brugeraktiviteter – uden at du behøver at skrive nogen testkode på forhånd. For iOS understøttes Game Loop-tests og XCTest.
- Tilpas testen (om nødvendigt): Afhængigt af den valgte testtype skal du muligvis foretage små justeringer i din test for at sikre, at den kører problemfrit i Test Lab-miljøet.
- Byg og upload din app: Når appen og eventuelle tilknyttede testfiler er klar, bygger og pakker du din app og uploader den derefter til Firebase.
- Definer din testmatrix: Dette er et af de mest kraftfulde aspekter af Test Lab. Du vælger et sæt testenheder (fysiske eller virtuelle), operativsystemversioner (f.eks. Android API-niveauer), lokaliteter (sprog- og regionindstillinger) og skærmorienteringer (stående eller liggende), som din app skal testes mod. Dette skaber en "testmatrix" af unikke konfigurationer, hvilket giver dig en bred dækning.
- Kør tests og analyser resultater: Test Lab udfører derefter dine tests på alle de valgte enheder i testmatrixen. Efter hver test får du detaljerede resultater, herunder logfiler, skærmbilleder og endda videooptagelser af testen, hvilket gør fejlfinding utrolig nem.
Denne automatiserede tilgang sparer dig for utallige timer og sikrer, at din app fungerer korrekt på de enheder, dine brugere faktisk anvender.
Sådan udfører du tests med Firebase Test Lab
At komme i gang med Firebase Test Lab via Firebase-konsollen er en ligetil proces, der kan udføres hurtigt. Før du starter, er det vigtigt at bemærke, at du skal have fakturering aktiveret for dit Firebase-projekt. Du skal også have ejerskabs- eller redigeringstilladelser for dit projekt.
Kørsel af en Instrumenteringstest (Android)
Instrumenteringstests er ideelle, når du har specifikke testscenarier, du ønsker at validere, og du har skrevet testkode ved hjælp af rammer som Espresso, Robotium eller UI Automator 2.0.
- Naviger til Test Lab: På navigationslinjen i Firebase-konsollen skal du klikke på Test Lab og derefter på Kom i gang -> Kør en instrumenteringstest.
- Upload dine APK'er: Klik på Gennemse, og naviger derefter til din app-APK (din applikationsfil) og din test-APK (filen, der indeholder dine instrumenteringstests). Klik derefter på Fortsæt.
- Definer din testmatrix: Her vælger du, hvilke enheder, Android API-niveauer, skærmorienteringer og lokaliteter du ønsker at teste din app mod. Du kan vælge de specifikke kombinationer, der er mest relevante for din app og din målgruppe.
- Avancerede indstillinger (valgfrit): Klik på Vis avancerede indstillinger for at ændre Test-timeout, som bestemmer den maksimale varighed for hver testudførelse. Dette er nyttigt for at forhindre, at tests hænger fast uendeligt.
- Start tests: Klik på Start <N> tests, hvor <N> er antallet af gyldige testkonfigurationer fra den testmatrix, du har defineret.
- Overvåg og analyser: Hver ventende test vises med et blåt urikon, mens den venter på at køre. Dette ikon ændres til et grønt flueben, når testen er afsluttet. Efter hver test er kørt, kan du klikke på den enhed, der er angivet i kolonnen Testudførelse, for at se testresultater, herunder testcases, logfiler, skærmbilleder og videoer af testkørslen. Disse visuelle og tekstuelle beviser er uvurderlige for fejlfinding.
Kørsel af en Robo-test (Android)
Robo-tests er en fremragende løsning, når du ikke har tid eller ressourcer til at skrive specifikke instrumenteringstests. Robo-test analyserer din apps brugergrænseflade og udforsker den automatisk, idet den simulerer brugerhandlinger som klik, swipes og tekstindtastning.

- Naviger til Test Lab: På navigationslinjen i Firebase-konsollen skal du klikke på Test Lab og derefter på Kom i gang -> Kør en Robo-test.
- Upload din app-APK: Klik på Gennemse, naviger til din app-APK, og klik derefter på Fortsæt.
- Definer din testmatrix: Ligesom med instrumenteringstests vælger du her de enheder, Android API-niveauer, skærmorienteringer og lokaliteter, du ønsker at teste din app mod.
- Avancerede indstillinger (valgfrit): Klik på Vis avancerede indstillinger for at ændre følgende muligheder:
- Test-timeout: Bestemmer den maksimale varighed af hver testudførelse.
- Testkontoparametre: Bruges til at give legitimationsoplysninger til en testkonto. Vigtigt: Denne funktion bør aldrig bruges med rigtige brugerkonti, kun med dedikerede testkonti.
- Yderligere felter: Bruges til at give tekstindtastning til andre tekstfelter i din app. Dette kan være nyttigt for at udfylde formularer, som Robo-test måske ikke automatisk udfylder meningsfuldt.
- Start tests: Klik på Start <N> tests, hvor <N> er antallet af gyldige testkonfigurationer fra den testmatrix, du har defineret på denne skærm.
- Overvåg og analyser: Hver ventende test vises med et blåt urikon, som ændres til et grønt flueben, når testen er afsluttet. Efter hver test er kørt, kan du klikke på den enhed, der er angivet i kolonnen Testudførelse, for at se testresultater, herunder testcases, logfiler, skærmbilleder og videoer.
Robo-tests kan endda guides med et script, hvis du ønsker mere kontrol over udforskningen, selvom detaljerne for script-oprettelse ikke er dækket her.
Hvilke enheder kan du teste din app på?
Et af de største aktiver ved Firebase Test Lab er den brede vifte af enheder og Android-versioner, du kan teste din app på. Denne diversitet sikrer, at din app fungerer optimalt for en bred brugerbase.
Sådan finder du tilgængelige enheder
Du kan se en liste over tilgængelige enheder på flere måder:
- Firebase-konsollen: Når du konfigurerer en test, kan du se en liste over tilgængelige enheder under trinnet Vælg dimensioner i arbejdsgangen Kør en test.
- gcloud CLI: For at se en liste over tilgængelige enheder fra Google Cloud CLI kan du bruge kommandoen:
gcloud firebase test android models list. - Google API'er Explorer: Du kan også søge efter enheder direkte uden et Firebase-projekt eller gcloud CLI ved hjælp af Google API'er Explorer.
Enhedsstabilitetsindikator
Firebase Test Lab giver dig indsigt i enheders stabilitet, hvilket kan hjælpe dig med at vælge de mest pålidelige enheder til dine tests. Enheder, der har udvist en højere grad af uafsluttede resultater over en længere periode (30 dage eller mere), markeres med indikatoren Reduceret stabilitet i Firebase-konsollen og i Google Cloud CLI.
Sådan tjekker du enhedsstabilitet i Firebase-konsollen:
- Åbn siden Test Lab i Firebase-konsollen.
- Vælg Kør en test, og vælg derefter en testtype.
- Upload din apps binærfil.
- Under trinnet Vælg dimensioner, klik på Tilpas.
- Vælg en eller flere enheder, du vil køre testen på. Afhængigt af enhedens stabilitet kan du se mærkaten Reduceret stabilitet ved siden af de valgte enheder.
- Kør testen.
Sådan tjekker du enhedsstabilitet i Google Cloud CLI:
- Download det seneste Google Cloud SDK.
- Kør en af følgende kommandoer:
gcloud firebase test android models listellergcloud firebase test android models describe MODEL_ID.
Hvis en test-enhed udviser reduceret stabilitet, vil du se mærkaten reduced_stability i kolonnen TAGS, der angiver de berørte versioner.
Enhedskapacitet
Test Lab giver også information om den globale kapacitet af mobile enheder i Googles mobilenhedslab. Dette indikerer det samlede antal online enheder, der er tilgængelige, og hjælper dig med at vurdere, om der er tilstrækkeligt med enheder til at køre dine tests effektivt. Enhedskapaciteten måles som Høj, Medium og Lav.
| Kapacitetstype | Beskrivelse | Anbefalet brug |
|---|---|---|
| Høj kapacitet | Test Labs enhedskatalog indeholder mange enheder. | Anbefales, når du udfører et stort antal tests. |
| Medium kapacitet | Test Labs enhedskatalog indeholder et moderat antal enheder. | Dette kapacitetsniveau er velegnet til de fleste tests. |
| Lav kapacitet | Test Labs enhedskatalog indeholder få enheder. Selvom forældede enheder tilhører den lave kapacitetsgruppe, er ikke alle enheder med lav kapacitet forældede. | Brug, når du skal køre en test på en specifik enhedsmodel og version. Disse tests er ikke velegnede til testfragmentering. På grund af den lave kapacitet kan tests tage lang tid at gennemføre, især hvis du starter et stort antal tests samtidigt. |
Det er vigtigt at bemærke, at enhedskapaciteten ikke afspejler realtidsfaktorer som længden af den ventende testkø, realtidstrafik på enhederne eller enhedernes aktuelle status. For fysiske enheder repræsenterer antallet gennemsnittet af online enheder over de seneste 30 dage.

Sådan tjekker du enhedskapacitet i Firebase-konsollen:
- Åbn siden Test Lab i Firebase-konsollen.
- Vælg Kør en test, og vælg derefter en testtype.
- Upload din apps binærfil.
- Under trinnet Vælg dimensioner, klik på Tilpas.
- (Valgfrit) For at filtrere enheder efter kapacitetsniveau:
- Klik på filterikonet.
- Vælg Kapacitet.
- Klik på det kapacitetsniveau, du vil filtrere efter: Medium eller Høj. For at filtrere enheder med lav kapacitet, filtrer efter Medium og Høj.
- Klik på Anvend.
- Vælg en eller flere enheder, du vil køre testen på. Du kan se en mærkat som Medium eller Høj ved siden af de valgte enheder.
- Kør testen.
Sådan tjekker du enhedskapacitet i Google Cloud CLI:
- Download det seneste Google Cloud SDK (version 417.0.0 eller højere).
- Kør en af følgende kommandoer:
gcloud firebase test android list-device-capacitiesellergcloud firebase test android models describe MODEL_ID.
Resultatet vil inkludere enhedens kapacitet, model-ID, modelnavn og OS-versions-ID.
Forældede versioner og enheder
Test Lab opdaterer løbende sit enhedskatalog. Forældede enheder vil typisk være tilgængelige i mindst en måned, før de fjernes fra kataloget. Når en enhed er fjernet, vil Test Lab ikke længere udføre testanmodninger rettet mod den, og disse anmodninger vil blive markeret som Skipped (oversprunget).
Det er vigtigt at holde øje med denne liste for at sikre, at dine tests fortsat kører på relevante enheder. Selvom en fysisk enhed fjernes, kan en virtuel version af den samme enhed dog fortsat være tilgængelig til test.
Eksempler på forældede enheder og deres planlagte fjernelsesdatoer:
| Producent | Modelnavn | Enhedsform | Enheds-ID | Planlagt fjernelsesdato | Anbefalet erstatning |
|---|---|---|---|---|---|
| Lenovo | Lenovo Tab P11 | Fysisk | J606F/30 | 2025-05-03 | |
| Samsung | Galaxy Tab S3 | Fysisk | gts3lltevzw/28 | 2024-04-14 | |
| Samsung | Galaxy Tab A (2016) | Fysisk | gtaxlwifi/27 | 2025-04-30 | |
| Google Nexus 5X | Virtuel | Nexus5X/24, Nexus5X/25, Nexus5X/26 | 2025-03-31 | MediumPhone.arm/26 | |
| Google Nexus 6P | Virtuel | Nexus6P/24, Nexus6P/25, Nexus6P/26, Nexus6P/27 | 2025-03-31 | MediumPhone.arm/26, MediumPhone.arm/27 | |
| Pixel 2 | Virtuel | Pixel2/26, Pixel2/27, Pixel2/28, Pixel2/29, Pixel2/30 | 2025-03-31 | MediumPhone.arm/26, MediumPhone.arm/27, MediumPhone.arm/28, MediumPhone.arm/29, MediumPhone.arm/30 | |
| Samsung | Galaxy S9 | Fysisk | starqlteue/26 | 2025-02-21 | |
| Lenovo Tab P12 Pro | Fysisk | gsi_arm64/33 | 2025-03-03 | ||
| Samsung | Galaxy A51 | Fysisk | a51/31 | 2025-03-03 | |
| OnePlus | OnePlus Nord2 5G | Fysisk | OP515BL1/33 | 2025-03-12 | |
| HMD Global | Nokia 1 | Fysisk | FRT/27 | 2025-06-09 | |
| Samsung | Galaxy S20 | Fysisk | x1q/29 | 2025-06-09 | |
| LG | LM-G900 | Fysisk | caymanlm/31 | 2025-06-09 | |
| Pixel 8 | Fysisk | shiba_beta/35 | 2025-06-26 | shiba/35 | |
| Samsung | Galaxy Note 9 | Fysisk | crownlte/29 | 2025-08-18 | |
| Motorola | Motorola E5 Play | Fysisk | pettyl/27 | 2025-09-07 |
Anmod om en enhed
Hvis du har brug for at teste din app på en specifik enhed, der ikke er tilgængelig i Test Lab-kataloget, kan du indsende en anmodning om, at enheden tilføjes til kataloget. Dette viser Googles engagement i at udvide og tilpasse tjenesten til udviklernes behov.
Ofte Stillede Spørgsmål (FAQ) om Firebase Test Lab
Hvad er forskellen mellem en instrumenteringstest og en Robo-test?
En instrumenteringstest er en test, du selv skriver med specifikke instruktioner til din app (f.eks. ved hjælp af Espresso for Android). Den kræver forudgående testkode. En Robo-test er en automatiseret test, der udforsker din apps brugergrænseflade dynamisk uden behov for forudskrevet testkode. Den simulerer brugerhandlinger og er god til at afdække uventet adfærd.
Skal jeg betale for at bruge Firebase Test Lab?
Ja, for at bruge Firebase Test Lab skal fakturering være aktiveret for dit Firebase-projekt. Der er dog ofte et gratis niveau eller gratis kvoter, som du kan udnytte, før du begynder at pådrage dig omkostninger. Tjek altid den aktuelle prismodel for Firebase for de seneste detaljer.

Kan jeg teste iOS-apps med Firebase Test Lab?
Ja, Firebase Test Lab understøtter test af iOS-apps. Specifikt kan du køre Game Loop-tests og XCTests for dine iOS-applikationer.
Hvad er en testmatrix?
En testmatrix er en kombination af forskellige testkonfigurationer, som din app testes mod. Dette inkluderer valget af enheder (fysiske og virtuelle), operativsystemversioner, skærmorienteringer og lokaliteter. En omfattende testmatrix sikrer, at din app fungerer pålideligt under forskellige forhold.
Hvad betyder "Reduceret stabilitet" for mine tests?
"Reduceret stabilitet" indikerer, at en specifik enhed har en tendens til at give uafsluttede testresultater over en længere periode. Selvom du stadig kan teste på disse enheder, kan det potentielt resultere i flere testkørsler, der ikke giver et klart bestået/fejlet resultat, hvilket kan gøre fejlfinding sværere.
Konklusion
Firebase Test Lab er et uvurderligt værktøj for enhver mobilappudvikler, der ønsker at sikre kvaliteten og stabiliteten af deres applikationer. Ved at udnytte skybaseret test på et stort udvalg af enheder, automatiserede testtyper som Robo-test, og detaljerede resultatrapporter, kan du effektivt identificere og løse problemer, før de når dine brugere.
Uanset om du udvikler til Android eller iOS, og uanset om du foretrækker at skrive detaljerede instrumenteringstests eller lade Robo-test udforske din app automatisk, giver Firebase Test Lab dig de værktøjer, du har brug for til at levere en robust og fejlfri brugeroplevelse. Invester i automatiserede tests med Firebase Test Lab, og oplev den ro i sindet, der følger med at vide, at din app er testet grundigt.
Hvis du vil læse andre artikler, der ligner Optimer Din Apptest Med Firebase Test Lab, kan du besøge kategorien Teknologi.
