Device Farm: vad det är, molntjänster och verkliga enheter

Författare: IT Sectr Publicerad: 2026-04-11 Lästid: 9 min

Device Farm — är en molntjänst som ger fjärråtkomst till hundratals verkliga mobila enheter för automatisk och manuell testning av applikationer. Utvecklare laddar upp APK eller IPA, väljer enhetskonfigurationer och kör tester parallellt utan att köpa fysiska enheter. Enligt rapporten Perfecto, 2025, minskar team som använder Device Farm tiden för regressionstestning med 73% jämfört med lokala enhetsfarmar.

Huvudpunkter

  • Device Farm — molnfarm av verkliga mobila enheter tillgänglig via prenumeration
  • Parallell körning av tester på flera enheter minskar verifieringstiden från dagar till timmar
  • AWS Device Farm, BrowserStack och Firebase Test Lab — de tre största leverantörerna
  • Cross-browser testning stöds på emulatorer och simulatorer
  • CI/CD-integration möjliggör automatisk körning av tester på Device Farm vid varje commit

Vad är Device Farm

Device Farm — är en infrastrukturlösning för testning av mobila applikationer som ger fjärråtkomst till fysiska och virtuella enheter via internet. Till skillnad från att köpa och underhålla ett eget enhetslaboratorium hyr utvecklare tid på andras enheter och betalar endast för faktisk användning.

Varför behövs Device Farm

Marknaden för mobila enheter omfattar över 24 000 unika Android-smartphonemodeller enligt OpenSignal, 2025. Att fysiskt köpa alla populära modeller för testning är omöjligt — detta skulle kräva miljontals dollar i investeringar och konstant förnyelse av flottan. Device Farm löser detta problem genom att ge tillgång till aktuella enheter via prenumeration.

Fysiska enheter vs emulatorer

Emulatorer och simulatorer täcker endast 60–70% av testsängen. Verkliga enheter behövs för att kontrollera sensorer, kamera, GPS, batterinivå, prestanda på svag hårdvara och beteende vid inkommande samtal. Device Farm kombinerar båda metoderna: emulatorer för snabba smoke-tester och fysiska enheter för fullständig verifiering.

För vem är Device Farm lämplig

Device Farm är lämplig för startups som lanserar sin första app, mogna produktteam med regelbundna releaser och enterprise-projekt med dussintals applikationer. Andamålsenligheten ökar med antalet målenheter och releasefrekvensen — ju fler konfigurationer som behöver kontrolleras, desto mer fördelaktig är molnmodellen.

Hur fungerar Device Farm

Det typiska arbetsscenariot med Device Farm omfattar fem steg: uppladdning av build, val av enheter, konfigurering av tester, körning, analys av resultat. Varje steg automatiseras via API, vilket gör det möjligt att bädda in Device Farm i CI/CD-pipelinen utan manuell intervention.

Ladda upp applikation

Utvecklaren laddar upp den byggda APK- (Android), AAB- eller IPA-filen (iOS) till leverantörens molnlagring. Vissa tjänster, som Firebase Test Lab, accepterar även Xcode- eller Android Studio-projekt direkt. Filstorleken är begränsad: AWS Device Farm stöder upp till 200 MB, BrowserStack — upp till 500 MB.

Välj konfigurationer

Från enhetskatalogen väljs målmodeller och OS-versioner. Moderna Device Farm stöder gruppering: “alla flaggskepp 2024–2025” eller “budget Android-enheter med Android 13–14”. Parallell exekvering gör det möjligt att köra ett test samtidigt på 10–50 enheter, vilket minskar totaltiden till minuter.

Körning och övervakning

Testen utförs på verkliga enheter i leverantörens datacenter. Utvecklaren följer förloppet via webbkonsolen i realtid: loggar, skärmbilder, videoinspelning av testet. Vid testmisslyckande tar Device Farm en skärmbild och samlar in crashloggen för diagnos.

groovy
// Exempel på Device Farm-konfiguration i Jenkinsfile
pipeline {
    agent any
    stages {
        stage('Build') {
            steps {
                sh './gradlew assembleDebug'
            }
        }
        stage('Device Farm Tests') {
            steps {
                sh '''aws device-farm schedule-run
                    --project-arn arn:aws:devicefarm:us-west-2:123:project:1
                    --app-arn arn:aws:devicefarm:us-west-2:123:app:1
                    --device-pool-arn arn:aws:devicefarm:us-west-2:123:pool:1
                    --test-arn arn:aws:devicefarm:us-west-2:123:test:1'''
            }
        }
    }
}

Viktiga funktioner i Device Farm

Moderna Device Farm erbjuder inte bara körning av tester utan även hjälpverktyg för diagnos, prestandaövervakning och integration med andra utvecklingstjänster. Funktionsuppsättningen varierar mellan leverantörer, men kärnan är densamma.

Automatisk testning

Alla större ramverk stöds: Espresso och UI Automator för Android, XCTest och XCUITest för iOS, Appium och Calabash för plattformsoberoende projekt. Device Farm kör tester utan kodändringar — det räcker att ange testramverket vid konfigurationen.

Manuell interaktiv testning

Utvecklaren får fjärråtkomst till en verklig enhet via webbläsaren: beröringar, svep, skärmrotation, knapptryckningar — alla åtgärder överförs i realtid. Interaktivt läge är oumbärligt för att reproducera sällsynta buggar som inte täcks av automatiska tester. AWS Device Farm erbjuder upp till 60 minuters manuell session utan extra kostnad.

Insamling av diagnostikdata

Efter varje körning genererar Device Farm en rapport: videoinspelning av testet, steg-för-steg-skärmbilder, enhetsloggar (logcat för Android, syslog för iOS), prestandadata (CPU, minne, nätverk) och crash-stacken. Dessa data hjälper till att lokalisera problemet utan att reproducera det på en lokal enhet.

CI/CD-integration

Alla större Device Farm-leverantörer erbjuder plugin-program för Jenkins, GitLab CI, GitHub Actions och CircleCI. Webhook-meddelanden informerar teamet om testresultat i Slack, Telegram eller e-post. Att konfigurera CI/CD-integration är standardpraxis för team som tillämpar kontinuerlig leverans.

FunktionAWS Device FarmBrowserStackFirebase Test Lab
Fysiska enheterJaJaJa
EmulatorerJaJaJa
Manuell testningJaJaNej
BugglokaliseringVideo + loggarVideo + loggarEndast loggar
Gratis gräns1000 minuter/månad60 minuter provperiodTester i Firebase — gratis

Device Farm-marknaden representeras av tre huvudkategorier: generella molnleverantörer (AWS), specialiserade testtjänster (BrowserStack) och verktyg inom plattformens ekosystem (Firebase). Valet beror på teknikstacken och teamets budget.

AWS Device Farm

Integrerad med Amazon Web Services ekosystem. Utvecklare som redan använder AWS för hosting och CI/CD får ett enhetligt kontrakt och sömlös integration med CodePipeline och CodeBuild. AWS Device Farm stöder testning av Android-, iOS- och webbapplikationer på fysiska enheter och emulatorer.

BrowserStack App Automate

Största oberoende leverantören med en flotta på över 3 000 verkliga enheter. BrowserStack är känd för sitt bekväma webbgränssnitt, snabb enhetstilldelning (10–15 sekunder) och stöd för Appium utan komplex konfiguration. Tjänsten uppdaterar automatiskt enhetsflottan inom en vecka efter lanseringen av en ny modell.

Firebase Test Lab

Gratis tjänst från Google för Android-applikationer med möjlighet att testa iOS (begränsat). Firebase Test Lab är särskilt attraktivt för startups: grundläggande testsäng är tillgängliga utan prenumeration. Integration med Firebase Console och Crashlytics gör det möjligt att koppla testmisslyckanden till verkliga krascher i produktion.

Andra leverantörer

På marknaden finns Samsung Remote Test Lab (gratis åtkomst till Samsung-enheter), Kobiton (enterprise-orienterad med on-premise-distribution), Perfecto (förvärvat av Perforce, fokus på finanssektorn) och Sauce Labs (en av de äldsta tjänsterna, nu en del av Tricentis).

Exempel på att köra tester på Device Farm

Låt oss titta på integrationen av Firebase Test Lab med kommandoraden för en Android-applikation. Firebase Test Lab kör tester via gcloud CLI, vilket gör det möjligt att bädda in körningen i valfri CI-pipeline utan extra plugin-program. Exemplet visar en minimal smoke-testkonfiguration på tre enheter.

bash
# Installation av gcloud CLI och autentisering
gcloud auth login
gcloud config set project my-android-app

# Ladda upp APK till Firebase Test Lab
gcloud firebase test android run \
    --app app-debug.apk \
    --test app-debug-test.apk \
    --type instrumentation \
    --device model=Pixel7,version=34 \
    --device model=SamsungS23,version=33 \
    --device model=OnePlus12,version=34 \
    --timeout 30m \
    --results-bucket gs://my-app-test-results

Kommandot laddar upp två filer: själva builden och test-APK med Espressos instrumenteringstester. Firebase Test Lab väljer automatiskt den senaste tillgängliga OS-versionen för varje modell, om version inte anges explicit. Resultaten sparas i Google Cloud Storage i XML- och HTML-format för visning i webbläsaren.

Integration med GitHub Actions

För automatisk körning vid varje push används GitHub Actions. Arbetsflödet bygger applikationen, kör Firebase Test Lab och returnerar verifieringsstatusen.

yaml
name: Android CI with Device Farm
on: [push]
jobs:
  test-on-devices:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-java@v4
        with:
          distribution: temurin
          java-version: 17
      - run: ./gradlew assembleDebug assembleDebugAndroidTest
      - uses: google-github-actions/auth@v2
        with:
          credentials_json: ${{ secrets.GCP_SA_KEY }}
      - run: gcloud firebase test android run
          --app app/build/outputs/apk/debug/app-debug.apk
          --test app/build/outputs/apk/androidTest/debug/app-debug-test.apk
          --device model=Pixel8,version=35

Prisstrukturer för Device Farm

Kostnaden för Device Farm består av flera parametrar: antal parallella sessioner, enhetstyp (fysisk eller emulator), testningens längd och extra funktioner. Det är viktigt att förstå kostnadsstrukturen innan du väljer leverantör för att undvika oväntade utgifter vid skalning.

Testminuter

De flesta leverantörer fakturerar baserat på faktisk enhetsanvändningstid. Fysiska enheter kostar 2–5 gånger mer än emulatorer. AWS Device Farm erbjuder 1000 gratis minuter per månad för nya konton, BrowserStack — 60 minuters provperiod. Genomsnittlig kostnad per minut på en fysisk Android-enhet är $0.05–0.17.

Teamprenumeration

För regelbunden testning är en fast prenumeration mer fördelaktig. BrowserStack erbjuder Team-planen för $299/månad för 3 användare med obegränsade minuter på fysiska enheter. AWS Device Farm har ingen fast prenumeration — betalning sker per minut, vilket är bekvämt vid oregelbunden belastning men dyrare vid intensiv användning.

Dolda kostnader

När du beräknar budgeten, ta hänsyn till: lagring av testartefakter (video, skärmbilder, loggar) — AWS Device Farm sparar resultat i upp till 90 dagar utan extra kostnad, BrowserStack — upp till 30 dagar; nätverkstrafik vid uppladdning av stora APK/IPA-filer; antal parallella sessioner — ökad parallellitet kan kräva en dyrare plan.

Vanliga frågor

Vad skiljer Device Farm från en vanlig emulator?

En emulator imiterar enheten programvarumässigt på din dator, medan Device Farm ger tillgång till en verklig fysisk enhet med original firmware, processor och sensorer. Endast på en verklig enhet kan du kontrollera kameran, GPS, chassitemperatur och interaktion med operatörens nätverk.

Kan Device Farm användas för iOS-applikationer?

Ja, alla större leverantörer stöder iOS. För testning krävs en IPA-fil byggd med ett utvecklingscertifikat. BrowserStack och AWS Device Farm tillhandahåller fysiska iPhone och iPad, Firebase Test Lab stöder iOS via macOS-simulatorer i datacentret.

Hur integreras Device Farm med Jenkins?

Jenkins integreras via plugin-program (t.ex. AWS Device Farm Plugin) eller via CLI-kommandon som körs i byggskedet. Plugin-programmet laddar automatiskt upp byggartefakter, kör tester på valda enheter och returnerar resultatet till Jenkins-pipelinen.

Vilken Device Farm ska jag välja för en startup?

För en startup är Firebase Test Lab optimalt — grundläggande funktioner är gratis, integration med Android Studio fungerar direkt. För iOS-projekt erbjuder BrowserStack 60 minuters gratis testning. När teamet växer går man över till betalda prenumerationer med full enhetsflotta.

Är det säkert att ladda upp applikationen till Device Farm?

Större leverantörer följer SOC 2-certifiering och krypterar data under överföring och lagring. AWS Device Farm arbetar inom isolerade AWS-konton, BrowserStack använder engångsenheter för varje session. Känsliga data (API-nycklar) rekommenderas att placeras i byggkonfigurationen.

Sammanfattning

  • Device Farm — molninfrastruktur för testning på verkliga enheter som ersätter ett fysiskt laboratorium
  • Parallell körning av tester på dussintals enheter minskar regressionstestning från dagar till 1–2 timmar
  • AWS Device Farm, BrowserStack och Firebase Test Lab — tre huvudleverantörer med olika prismodeller
  • Fysiska enheter är nödvändiga för att kontrollera sensorer, prestanda och interaktion med operativsystemet
  • CI/CD-integration av Device Farm med Jenkins, GitHub Actions och GitLab CI säkerställer automatisk testning vid varje commit
  • Val av leverantör beror på teknikstacken: Firebase är praktiskt för Android, BrowserStack för plattformsoberoende projekt, AWS för team i Amazons ekosystem
  • Rekommendation: börja med Firebase Test Lab för Android och BrowserStack för iOS, skala sedan till AWS Device Farm när teamet växer

Vi utvecklar en mobil applikation nyckelfärdigt

IT Sectr skapar iOS- och Android-applikationer för startups och företag sedan 2017. Vi ger dig råd och föreslår den bästa lösningen.

Diskutera projektet

Läs också