Device Farm: mi ez, felhőszolgáltatások és valódi eszközök

Szerző: IT Sectr Megjelenés: 2026-04-11 Olvasási idő: 9 perc

Device Farm — egy felhőszolgáltatás, amely távoli hozzáférést biztosít több száz valódi mobileszközhöz alkalmazások automatikus és kézi teszteléséhez. A fejlesztők APK vagy IPA fájlokat töltenek fel, kiválasztják az eszközkonfigurációkat és párhuzamosan futtatják a teszteket anélkül, hogy fizikai eszközöket vásárolnának. A Perfecto, 2025 jelentése szerint a Device Farm-ot használó csapatok 73%-kal csökkentik a regressziós tesztelés idejét a helyi eszközfarmokhoz képest.

Főbb pontok

  • Device Farm — valódi mobileszközök felhőfarmja, amely előfizetéssel érhető el
  • Párhuzamos futtatás több eszközön csökkenti az ellenőrzési időt napokról órákra
  • AWS Device Farm, BrowserStack és Firebase Test Lab — a három legnagyobb szolgáltató
  • Böngészők közötti tesztelés emulátorokon és szimulátorokon támogatott
  • CI/CD integráció lehetővé teszi a tesztek automatikus futtatását a Device Farm-on minden commit-nél

Mi az a Device Farm

Device Farm — egy infrastrukturális megoldás mobilalkalmazások teszteléséhez, amely interneten keresztül biztosít távoli hozzáférést fizikai és virtuális eszközökhöz. Ellentétben a saját eszköz laboratórium megvásárlásával és karbantartásával, a fejlesztők időt bérelnek mások eszközein, és csak a tényleges használatért fizetnek.

Miért van szükség Device Farm-ra

A mobileszköz-piac több mint 24 000 egyedi Android okostelefon modellt foglal magában az OpenSignal, 2025 szerint. Az összes népszerű modell fizikai beszerzése teszteléshez lehetetlen — ez több millió dollár befektetést és a flotta folyamatos frissítését igényelné. A Device Farm megoldja ezt a problémát azáltal, hogy előfizetéssel hozzáférést biztosít aktuális eszközökhöz.

Fizikai eszközök vs emulátorok

Az emulátorok és szimulátorok csak a tesztforgatókönyvek 60–70%-át fedik le. Valódi eszközök szükségesek az érzékelők, kamera, GPS, akkumulátorszint, gyenge hardveren nyújtott teljesítmény és bejövő hívások alatti viselkedés ellenőrzéséhez. A Device Farm ötvözi mindkét megközelítést: emulátorokat a gyors smoke-tesztekhez és fizikai eszközöket a teljes ellenőrzéshez.

Kinek való a Device Farm

A Device Farm alkalmas az első alkalmazásukat indító startupok, rendszeres kiadásokkal rendelkező érett termékcsapatok és enterprise projektek számára, amelyek tucatnyi alkalmazással rendelkeznek. A használat célszerűsége nő a célzott eszközök számának és a kiadások gyakoriságának növekedésével — minél több konfigurációt kell ellenőrizni, annál előnyösebb a felhőmodell.

Hogyan működik a Device Farm

A Device Farm-mal való tipikus munka öt szakaszból áll: a build feltöltése, eszközök kiválasztása, tesztek konfigurálása, futtatás, eredmények elemzése. Minden szakasz API-n keresztül automatizálható, ami lehetővé teszi a Device Farm beágyazását a CI/CD csővezetékbe kézi beavatkozás nélkül.

Alkalmazás feltöltése

A fejlesztő feltölti az elkészített APK (Android), AAB vagy IPA (iOS) fájlt a szolgáltató felhőtárhelyére. Egyes szolgáltatások, mint a Firebase Test Lab, közvetlenül is elfogadják az Xcode vagy Android Studio projektet. A fájlméret korlátozott: az AWS Device Farm legfeljebb 200 MB-ot, a BrowserStack legfeljebb 500 MB-ot támogat.

Konfigurációk kiválasztása

Az eszközkatalógusból kiválasztásra kerülnek a célmodellek és OS-verziók. A modern Device Farm-ok támogatják a csoportosítást: „összes zászlóshajó 2024–2025” vagy „olcsó Android készülékek Android 13–14-gyel”. A párhuzamos végrehajtás lehetővé teszi egy teszt egyidejű futtatását 10–50 eszközön, a teljes időt percekre csökkentve.

Futtatás és figyelés

A tesztek valódi eszközökön futnak a szolgáltató adatközpontjaiban. A fejlesztő valós időben követi nyomon a folyamatot a webkonzolon keresztül: naplók, képernyőképek, a teszt videófelvétele. A teszt sikertelensége esetén a Device Farm képernyőképet készít és összegyűjti a crash naplót a diagnosztikához.

groovy
// Device Farm konfiguráció példája a Jenkinsfile-ban
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'''
            }
        }
    }
}

A Device Farm főbb funkciói

A modern Device Farm nemcsak tesztek futtatását, hanem segédeszközöket is biztosít diagnosztikához, teljesítményfigyeléshez és más fejlesztői szolgáltatásokkal való integrációhoz. A funkciókészlet szolgáltatónként változik, de a mag közös marad.

Automatikus tesztelés

Az összes fő keretrendszer támogatott: Espresso és UI Automator Androidhoz, XCTest és XCUITest iOS-hez, Appium és Calabash platformok közötti projektekhez. A Device Farm kódmódosítás nélkül futtatja a teszteket — elég megadni a teszt keretrendszert a konfigurációnál.

Kézi interaktív tesztelés

A fejlesztő távoli hozzáférést kap egy valódi eszközhöz a böngészőn keresztül: érintések, csúsztatások, képernyő elforgatása, gombnyomások — minden művelet valós időben kerül továbbításra. Az interaktív mód nélkülözhetetlen a ritka hibák reprodukálásához, amelyeket az automatikus tesztek nem fednek le. Az AWS Device Farm legfeljebb 60 perc kézi munkamenetet biztosít külön díj nélkül.

Diagnosztikai adatok gyűjtése

Minden futtatás után a Device Farm jelentést készít: a teszt videófelvétele, lépésről lépésre képernyőképek, eszköznaplók (logcat Androidhoz, syslog iOS-hez), teljesítményadatok (CPU, memória, hálózat) és a crash stack. Ezek az adatok segítenek a probléma lokalizálásában anélkül, hogy azt helyi eszközön kellene reprodukálni.

CI/CD integráció

Az összes nagy Device Farm szolgáltató kínál bővítményeket Jenkins, GitLab CI, GitHub Actions és CircleCI számára. A Webhook értesítések tájékoztatják a csapatot a teszteredményekről Slack, Telegram vagy e-mail útján. A CI/CD integráció konfigurálása szokásos gyakorlat a folyamatos szállítást alkalmazó csapatok számára.

FunkcióAWS Device FarmBrowserStackFirebase Test Lab
Fizikai eszközökIgenIgenIgen
EmulátorokIgenIgenIgen
Kézi tesztelésIgenIgenNem
HibakeresésVideó + naplókVideó + naplókCsak naplók
Ingyenes korlát1000 perc/hónap60 perc próbaidőTesztek a Firebase-ben — ingyenes

A Device Farm piacot három fő kategória képviseli: általános célú felhőszolgáltatók (AWS), speciális tesztelési szolgáltatások (BrowserStack) és a platform ökoszisztémáján belüli eszközök (Firebase). A választás a technológiai veremtől és a csapat költségvetésétől függ.

AWS Device Farm

Integrálva az Amazon Web Services ökoszisztémával. Azok a fejlesztők, akik már használják az AWS-t hostingra és CI/CD-re, egységes szerződést és zökkenőmentes integrációt kapnak a CodePipeline-lel és a CodeBuild-del. Az AWS Device Farm támogatja Android, iOS és webalkalmazások tesztelését fizikai eszközökön és emulátorokon.

BrowserStack App Automate

A legnagyobb független szolgáltató több mint 3 000 valódi eszközből álló flottával. A BrowserStack kényelmes webes felületéről, az eszköz gyors biztosításáról (10–15 másodperc) és az Appium támogatásáról ismert összetett konfiguráció nélkül. A szolgáltatás automatikusan frissíti az eszközflottát egy héten belül az új modell megjelenése után.

Firebase Test Lab

Ingyenes szolgáltatás a Google-tól Android-alkalmazásokhoz, korlátozott iOS tesztelési lehetőséggel. A Firebase Test Lab különösen vonzó a startupok számára: az alapvető tesztelési forgatókönyvek előfizetés nélkül is elérhetők. A Firebase Console és Crashlytics integráció lehetővé teszi a teszthibák összekapcsolását a valós éles üzemi összeomlásokkal.

Egyéb szolgáltatók

A piacon jelen van a Samsung Remote Test Lab (ingyenes hozzáférés Samsung eszközökhöz), a Kobiton (enterprise-orientált on-premise telepítéssel), a Perfecto (a Perforce által felvásárolva, pénzügyi szektorra fókuszálva) és a Sauce Labs (az egyik legrégebbi szolgáltatás, ma a Tricentis része).

Példa tesztek futtatására a Device Farm-on

Tekintsük át a Firebase Test Lab parancssorral való integrációját egy Android alkalmazáshoz. A Firebase Test Lab a gcloud CLI-n keresztül futtatja a teszteket, ami lehetővé teszi a futtatás beágyazását bármely CI csővezetékbe további bővítmények nélkül. A példa egy minimális smoke-teszt konfigurációt mutat be három eszközön.

bash
# A gcloud CLI telepítése és hitelesítés
gcloud auth login
gcloud config set project my-android-app

# APK feltöltése a Firebase Test Labbe
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

A parancs két fájlt tölt fel: magát a build-et és a teszt APK-t az Espresso instrumentációs tesztjeivel. A Firebase Test Lab automatikusan kiválasztja a legújabb elérhető OS-verziót minden modellhez, ha a version nincs kifejezetten megadva. Az eredmények a Google Cloud Storage-ban XML és HTML formátumban kerülnek mentésre a böngészőben való megtekintéshez.

Integráció a GitHub Actions-szel

Az automatikus futtatáshoz minden push-nál a GitHub Actions használatos. A munkafolyamat összeállítja az alkalmazást, elindítja a Firebase Test Lab-ot és visszaadja az ellenőrzés állapotát.

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

A Device Farm árazási modelljei

A Device Farm költsége több paraméterből tevődik össze: a párhuzamos munkamenetek száma, az eszköz típusa (fizikai vagy emulátor), a tesztelés időtartama és a kiegészítő funkciók. Fontos megérteni a költségszerkezetet a szolgáltató kiválasztása előtt, hogy elkerüljük a váratlan kiadásokat a méretezés során.

Teszt percek

A legtöbb szolgáltató a tényleges eszközhasználati idő alapján számláz. A fizikai eszközök 2–5-ször drágábbak, mint az emulátorok. Az AWS Device Farm 1000 ingyenes percet kínál havonta új fiókok számára, a BrowserStack — 60 perc próbaidőt. Egy perc átlagos költsége fizikai Android-eszközön $0.05–0.17.

Csapat előfizetés

Rendszeres teszteléshez a fix előfizetés előnyösebb. A BrowserStack Team csomagot kínál havi 299 dollárért 3 felhasználónak korlátlan percekkel fizikai eszközökön. Az AWS Device Farm-nak nincs fix előfizetése — a fizetés percenként történik, ami rendszertelen terhelés esetén kényelmes, de intenzív használatnál drágább.

Rejtett költségek

A költségvetés kiszámításakor vegye figyelembe: a tesztelési artefaktumok tárolását (videó, képernyőképek, naplók) — az AWS Device Farm 90 napig tárolja az eredményeket külön díj nélkül, a BrowserStack 30 napig; a hálózati forgalmat nagy APK/IPA fájlok feltöltésekor; a párhuzamos munkamenetek számát — a párhuzamosság növelése drágább csomagot igényelhet.

Gyakran Ismételt Kérdések

Miben különbözik a Device Farm a hagyományos emulátortól?

Az emulátor szoftveresen utánozza az eszközt a számítógépén, míg a Device Farm hozzáférést biztosít egy valódi fizikai eszközhöz eredeti firmware-rel, processzorral és érzékelőkkel. Csak egy valódi eszközön ellenőrizhető a kamera, GPS, ház hőmérséklete és a hálózati üzemeltetővel való interakció.

Használható a Device Farm iOS alkalmazásokhoz?

Igen, az összes nagy szolgáltató támogatja az iOS-t. A teszteléshez development tanúsítvánnyal épített IPA fájl szükséges. A BrowserStack és az AWS Device Farm fizikai iPhone-t és iPad-et biztosít, a Firebase Test Lab az iOS-t macOS szimulátorokon keresztül támogatja az adatközpontban.

Hogyan integrálódik a Device Farm a Jenkins-szel?

A Jenkins bővítményeken (például AWS Device Farm Plugin) vagy a build szakaszban futtatott CLI parancsokon keresztül integrálódik. A bővítmény automatikusan feltölti a build artefaktumokat, futtatja a teszteket a kiválasztott eszközökön és visszaadja az eredményt a Jenkins csővezetékbe.

Melyik Device Farm-ot válasszam egy startup számára?

Startupok számára a Firebase Test Lab az optimális — az alapfunkciók ingyenesek, az Android Studio integráció a dobozból működik. iOS projektekhez a BrowserStack 60 perc ingyenes tesztelést kínál. Ahogy a csapat növekszik, áttérnek a fizetős előfizetésekre teljes eszközflottával.

Biztonságos feltölteni az alkalmazást a Device Farm-ba?

A nagy szolgáltatók betartják a SOC 2 tanúsítványt és titkosítják az adatokat átvitel és tárolás közben. Az AWS Device Farm elkülönített AWS fiókokon belül működik, a BrowserStack eldobható eszközöket használ minden munkamenethez. Az érzékeny adatokat (API kulcsok) ajánlott a build konfigurációba helyezni.

Összefoglalás

  • Device Farm — felhőalapú infrastruktúra valódi eszközökön történő teszteléshez, amely helyettesíti a fizikai laboratóriumot
  • Párhuzamos futtatás több tucat eszközön csökkenti a regressziós tesztelés idejét napokról 1–2 órára
  • AWS Device Farm, BrowserStack és Firebase Test Lab — három fő szolgáltató eltérő árazási modellekkel
  • Fizikai eszközök szükségesek az érzékelők, teljesítmény és az operációs rendszerrel való interakció ellenőrzéséhez
  • CI/CD integráció a Device Farm és Jenkins, GitHub Actions, GitLab CI között biztosítja az automatikus tesztelést minden commit-nál
  • A szolgáltató kiválasztása a technológiai veremtől függ: a Firebase Androidra, a BrowserStack platformok közötti projektekre, az AWS az Amazon ökoszisztémában lévő csapatok számára alkalmas
  • Javaslat: kezdje a Firebase Test Lab-lel Androidra és a BrowserStack-kel iOS-re, majd méretezzen az AWS Device Farm-ra a csapat növekedésével

Kulcsrakész mobilalkalmazást fejlesztünk

Az IT Sectr 2017 óta készít iOS és Android alkalmazásokat induló vállalkozásoknak és vállalkozásoknak. Tanácsot adunk, és a legjobb megoldást javasoljuk.

Projekt megbeszélése

Olvassa el is