Device Farm: nima, bulut xizmatlari va real qurilmalar

Muallif: IT Sectr Nashr etilgan: 2026-04-11 O'qish vaqti: 9 daq

Device Farm — bu avtomatik va qo’lda ilova testlash uchun yuzlab real mobil qurilmalarga masofaviy kirishni ta’minlovchi bulut xizmatidir. Dasturchilar APK yoki IPA yuklaydi, qurilma konfiguratsiyalarini tanlaydi va jismoniy qurilmalarni sotib olmasdan testlarni parallel ishga tushiradi. Perfecto, 2025 hisobotiga ko’ra, Device Farm-dan foydalanadigan jamoalar regressiya testi vaqtini mahalliy qurilma fermalariga nisbatan 73% ga qisqartiradi.

Asosiylari

  • Device Farm — obuna orqali mavjud bo’lgan real mobil qurilmalarning bulut fermasi
  • Parallel ishga tushirish testlarni bir nechta qurilmalarda tekshirish vaqtini kunlardan soatlarga qisqartiradi
  • AWS Device Farm, BrowserStack va Firebase Test Lab — uchta yirik provayder
  • Brauzerlararo testlash emulyator va simulyatorlarda qo’llab-quvvatlanadi
  • CI/CD integratsiyasi har bir commit-da Device Farm-da testlarni avtomatik ishga tushirish imkonini beradi

Device Farm nima

Device Farm — bu mobil ilovalarni sinash uchun internet orqali jismoniy va virtual qurilmalarga masofaviy kirishni ta’minlovchi infratuzilma yechimidir. O’z qurilma laboratoriyasini sotib olish va saqlashdan farqli o’laroq, dasturchilar boshqalarning qurilmalarida vaqt ijaraga oladi va faqat haqiqiy foydalanish uchun to’laydi.

Device Farm nima uchun kerak

Mobil qurilmalar bozori OpenSignal, 2025 ma’lumotlariga ko’ra 24 000 dan ortiq noyob Android smartfon modellarini o’z ichiga oladi. Sinov uchun barcha mashhur modellarni jismoniy sotib olish mumkin emas — bu millionlab dollar sarmoya va parkni doimiy yangilashni talab qiladi. Device Farm bu muammoni obuna orqali dolzarb qurilmalarga kirishni ta’minlab hal qiladi.

Jismoniy qurilmalar va emulyatorlar

Emulyator va simulyatorlar test stsenariylarining faqat 60–70% ini qamrab oladi. Sensorlar, kamera, GPS, batareya darajasi, zaif apparatda ishlash va kiruvchi qo’ng’iroqlar paytida xatti-harakatni tekshirish uchun real qurilmalar zarur. Device Farm ikkala yondashuvni birlashtiradi: tezkor smoke-testlar uchun emulyatorlar va to’liq tekshirish uchun jismoniy qurilmalar.

Device Farm kimga mos keladi

Device Farm birinchi ilovasini chiqarayotgan startaplar, muntazam relizlari bo’lgan yetuk mahsulot jamoalari va o’nlab ilovalari bo’lgan enterprise loyihalar uchun mos keladi. Foydalanishning maqsadga muvofiqligi maqsadli qurilmalar soni va reliz chastotasi oshishi bilan ortadi — qanchalik ko’p konfiguratsiyani tekshirish kerak bo’lsa, bulut modeli shunchalik foydali bo’ladi.

Device Farm qanday ishlaydi

Device Farm bilan odatdagi ish stsenariysi besh bosqichni o’z ichiga oladi: build yuklash, qurilmalarni tanlash, testlarni sozlash, ishga tushirish, natijalarni tahlil qilish. Har bir bosqich API orqali avtomatlashtiriladi, bu esa Device Farm-ni qo’l aralashuvisiz CI/CD quvuriga o’rnatish imkonini beradi.

Ilovani yuklash

Dasturchi yig’ilgan APK (Android), AAB yoki IPA (iOS) faylini provayderning bulut saqlash joyiga yuklaydi. Ba’zi xizmatlar, masalan Firebase Test Lab, to’g’ridan-to’g’ri Xcode yoki Android Studio loyihasini ham qabul qiladi. Fayl hajmi cheklangan: AWS Device Farm 200 MB gacha, BrowserStack esa 500 MB gacha qo’llab-quvvatlaydi.

Konfiguratsiyalarni tanlash

Qurilmalar katalogidan maqsadli modellar va OS versiyalari tanlanadi. Zamonaviy Device Farm guruhlashni qo’llab-quvvatlaydi: “2024–2025 flagmanlari” yoki “Android 13–14 li byudjet Androidlari”. Parallel bajarish bir testni bir vaqtning o’zida 10–50 qurilmada ishga tushirish imkonini beradi, umumiy vaqtni daqiqalargacha qisqartiradi.

Ishga tushirish va monitoring

Testlar provayderning ma’lumot markazlarida real qurilmalarda bajariladi. Dasturchi veb-konsol orqali real vaqtda jarayonni kuzatadi: jurnallar, ekran tasvirlari, testning video yozuvi. Test muvaffaqiyatsiz bo’lsa, Device Farm ekran tasvirini oladi va diagnostika uchun crash jurnalini yig’adi.

groovy
// Jenkinsfileda Device Farm konfiguratsiyasi misoli
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'''
            }
        }
    }
}

Device Farm-ning asosiy imkoniyatlari

Zamonaviy Device Farm nafaqat testlarni ishga tushirish, balki diagnostika, samaradorlik monitoringi va boshqa ishlab chiqish xizmatlari bilan integratsiya uchun yordamchi vositalarni ham taqdim etadi. Funksiyalar to’plami provayderlar orasida farq qiladi, ammo o’zak bir xil bo’lib qoladi.

Avtomatik testlash

Barcha asosiy freymvorklar qo’llab-quvvatlanadi: Android uchun Espresso va UI Automator, iOS uchun XCTest va XCUITest, platformalararo loyihalar uchun Appium va Calabash. Device Farm kodni o’zgartirmasdan testlarni ishga tushiradi — konfiguratsiya vaqtida test freymvorkini ko’rsatish kifoya.

Qo’lda interaktiv testlash

Dasturchi brauzer orqali real qurilmaga masofaviy kirish oladi: teginishlar, surishlar, ekranni aylantirish, tugmalarni bosish — barcha harakatlar real vaqtda uzatiladi. Interaktiv rejim avtomatik testlar bilan qamrab olinmagan noyob xatolarni takrorlash uchun ajralmas hisoblanadi. AWS Device Farm qo’shimcha to’lovsiz 60 daqiqagacha qo’lda seansni taqdim etadi.

Diagnostik ma’lumotlarni yig’ish

Har bir ishga tushirishdan so’ng Device Farm hisobot yaratadi: testning video yozuvi, bosqichma-bosqich ekran tasvirlari, qurilma jurnallari (Android uchun logcat, iOS uchun syslog), samaradorlik ma’lumotlari (CPU, xotira, tarmoq) va crash steki. Bu ma’lumotlar muammoni mahalliy qurilmada takrorlamasdan aniqlashga yordam beradi.

CI/CD integratsiyasi

Barcha yirik Device Farm provayderlari Jenkins, GitLab CI, GitHub Actions va CircleCI uchun plaginlarni taqdim etadi. Webhook bildirishnomalari jamoani Slack, Telegram yoki email orqali test natijalari haqida xabardor qiladi. CI/CD integratsiyasini sozlash doimiy yetkazib berishni qo’llaydigan jamoalar uchun standart amaliyotdir.

FunksiyaAWS Device FarmBrowserStackFirebase Test Lab
Jismoniy qurilmalarHaHaHa
EmulyatorlarHaHaHa
Qo’lda testlashHaHaYo’q
Xato lokalizatsiyasiVideo + jurnallarVideo + jurnallarFaqat jurnallar
Bepul limit1000 daqiqa/oy60 daqiqa sinovFirebase-dagi testlar — bepul

Device Farm bozori uchta asosiy kategoriya bilan ifodalanadi: umumiy maqsadli bulut provayderlari (AWS), ixtisoslashgan test xizmatlari (BrowserStack) va platforma ekotizimidagi vositalar (Firebase). Tanlov texnologiya steki va jamoa byudjetiga bog’liq.

AWS Device Farm

Amazon Web Services ekotizimi bilan integratsiyalangan. Xosting va CI/CD uchun allaqachon AWS dan foydalanayotgan dasturchilar yagona shartnoma va CodePipeline va CodeBuild bilan muammosiz integratsiya oladi. AWS Device Farm jismoniy qurilmalar va emulyatorlarda Android, iOS va web ilovalarni testlashni qo’llab-quvvatlaydi.

BrowserStack App Automate

3 000 dan ortiq real qurilmalar parkiga ega eng yirik mustaqil provayder. BrowserStack qulay veb-interfeysi, qurilmani tez taqdim etishi (10–15 soniya) va murakkab konfiguratsiyasiz Appium qo’llab-quvvatlashi bilan tanilgan. Xizmat yangi model chiqqandan keyin bir hafta ichida qurilmalar parkini avtomatik yangilaydi.

Firebase Test Lab

Google-dan Android ilovalari uchun bepul xizmat, iOS testlash imkoniyati bilan (cheklangan). Firebase Test Lab startaplar uchun ayniqsa jozibador: asosiy test stsenariylari obunasiz mavjud. Firebase Console va Crashlytics bilan integratsiya test muvaffaqiyatsizliklarini ishlab chiqarishdagi real crashlar bilan bog’lash imkonini beradi.

Boshqa provayderlar

Bozorda Samsung Remote Test Lab (Samsung qurilmalariga bepul kirish), Kobiton (on-premise joylashtirish bilan enterprise yo’naltirilgan), Perfecto (Perforce tomonidan sotib olingan, moliya sektoriga qaratilgan) va Sauce Labs (eng qadimgi xizmatlardan biri, hozir Tricentis tarkibida) mavjud.

Device Farm-da testlarni ishga tushirish namunasi

Firebase Test Lab ning Android ilovasi uchun buyruq qatori bilan integratsiyasini ko’rib chiqaylik. Firebase Test Lab testlarni gcloud CLI orqali ishga tushiradi, bu qo’shimcha plaginlarsiz istalgan CI quvuriga joylashtirish imkonini beradi. Misol uchta qurilmada minimal smoke-test konfiguratsiyasini ko’rsatadi.

bash
# gcloud CLI o'rnatish va avtorizatsiya
gcloud auth login
gcloud config set project my-android-app

# APK ni Firebase Test Lab ga yuklash
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

Buyruq ikkita faylni yuklaydi: build-ning o’zi va instrumental testlari bo’lgan Espresso test APK-si. Firebase Test Lab, version aniq ko’rsatilmagan bo’lsa, har bir model uchun avtomatik ravishda eng so’nggi mavjud OS versiyasini tanlaydi. Natijalar brauzerda ko’rish uchun Google Cloud Storage-da XML va HTML formatida saqlanadi.

GitHub Actions bilan integratsiya

Har bir push-da avtomatik ishga tushirish uchun GitHub Actions dan foydalaniladi. Workflow ilovani yig’adi, Firebase Test Lab-ni ishga tushiradi va tekshirish holatini qaytaradi.

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

Device Farm narx modellari

Device Farm narxi bir necha parametrlardan iborat: parallel seanslar soni, qurilma turi (jismoniy yoki emulyator), test davomiyligi va qo’shimcha funksiyalar. Miqyoslashda kutilmagan xarajatlardan qochish uchun provayderni tanlashdan oldin xarajatlar tuzilishini tushunish muhimdir.

Test daqiqalari

Aksariyat provayderlar qurilmadan haqiqiy foydalanish vaqti uchun tarif belgilaydi. Jismoniy qurilmalar emulyatorlardan 2–5 baravar qimmat. AWS Device Farm yangi hisoblar uchun oyiga 1000 bepul daqiqa taklif qiladi, BrowserStack — 60 daqiqa sinov muddati. Jismoniy Android qurilmasida bir daqiqaning o’rtacha narxi $0.05–0.17 ni tashkil qiladi.

Jamoa obunasi

Muntazam testlash uchun qat’iy obuna foydaliroq. BrowserStack jismoniy qurilmalarda cheksiz daqiqalar bilan 3 ta foydalanuvchi uchun oyiga $299 Team rejasini taklif qiladi. AWS Device Farm qat’iy obunaga ega emas — to’lov har bir daqiqa uchun amalga oshiriladi, bu notekis yuklama uchun qulay, ammo intensiv foydalanishda qimmatroq.

Yashirin xarajatlar

Byudjetni hisoblashda quyidagilarni hisobga oling: test natijalarini saqlash (video, ekran tasvirlari, jurnallar) — AWS Device Farm natijalarni qo’shimcha to’lovsiz 90 kungacha saqlaydi, BrowserStack — 30 kungacha; katta APK/IPA yuklashda tarmoq trafigi; parallel seanslar soni — parallellikni oshirish qimmatroq tarifni talab qilishi mumkin.

Ko’p beriladigan savollar

Device Farm oddiy emulyatordan nimasi bilan farq qiladi?

Emulyator qurilmani kompyuteringizda dasturiy ravishda taqlid qiladi, Device Farm esa original proshivka, protsessor va sensorlarga ega haqiqiy jismoniy qurilmaga kirishni ta’minlaydi. Faqat haqiqiy qurilmada kamera, GPS, korpus harorati va operator tarmog’i bilan o’zaro aloqani tekshirish mumkin.

Device Farm dan iOS ilovalari uchun foydalanish mumkinmi?

Ha, barcha yirik provayderlar iOS ni qo’llab-quvvatlaydi. Testlash uchun development sertifikati bilan yig’ilgan IPA fayli talab qilinadi. BrowserStack va AWS Device Farm jismoniy iPhone va iPad taqdim etadi, Firebase Test Lab iOS ni ma’lumot markazidagi macOS simulyatorlari orqali qo’llab-quvvatlaydi.

Device Farm Jenkins bilan qanday integratsiyalanadi?

Jenkins plaginlar (masalan, AWS Device Farm Plugin) yoki build bosqichida ishga tushiriladigan CLI buyruqlari orqali integratsiyalanadi. Plagin avtomatik ravishda build natijalarini yuklaydi, tanlangan qurilmalarda testlarni ishga tushiradi va natijani Jenkins quvuriga qaytaradi.

Startap uchun qaysi Device Farm ni tanlash kerak?

Startap uchun Firebase Test Lab optimal — asosiy imkoniyatlar bepul, Android Studio bilan integratsiya qutidan tashqari ishlaydi. iOS loyihalari uchun BrowserStack 60 daqiqa bepul testni taklif qiladi. Jamoa o’sishi bilan to’liq qurilmalar parkiga ega pullik obunalarga o’tiladi.

Ilovani Device Farm ga yuklash xavfsizmi?

Yirik provayderlar SOC 2 sertifikatiga rioya qiladi va ma’lumotlarni uzatish va saqlash vaqtida shifrlaydi. AWS Device Farm izolyatsiyalangan AWS hisoblarida ishlaydi, BrowserStack har bir seans uchun bir martalik qurilmalardan foydalanadi. Maxfiy ma’lumotlarni (API kalitlari) build konfiguratsiyasiga joylashtirish tavsiya etiladi.

Xulosalar

  • Device Farm — jismoniy laboratoriyani almashtiruvchi, real qurilmalarda testlash uchun bulut infratuzilmasi
  • Parallel ishga tushirish testlarni o’nlab qurilmalarda tekshirish vaqtini kunlardan 1–2 soatgacha qisqartiradi
  • AWS Device Farm, BrowserStack va Firebase Test Lab — turli narx modellari bilan uchta asosiy provayder
  • Jismoniy qurilmalar sensorlar, samaradorlik va OS bilan o’zaro aloqani tekshirish uchun zarur
  • CI/CD integratsiyasi Device Farm ni Jenkins, GitHub Actions va GitLab CI bilan har bir commit-da avtomatik testlashni ta’minlaydi
  • Provayder tanlovi texnologiya stekiga bog’liq: Firebase Android uchun qulay, BrowserStack platformalararo loyihalar uchun, AWS Amazon ekotizimidagi jamoalar uchun
  • Tavsiya: Android uchun Firebase Test Lab va iOS uchun BrowserStack bilan boshlang, so’ng jamoa o’sishi bilan AWS Device Farm ga o’ting

Biz kalit topshirig'i bilan mobil ilovani ishlab chiqamiz

IT Sectr 2017-yildan beri startaplar va korxonalar uchun iOS va Android ilovalarini yaratadi. Biz sizga maslahat beramiz va eng yaxshi yechimni taklif qilamiz.

Loyihani muhokama qilish

Shuningdek o'qing