TestFlight — iOS, iPadOS, watchOS və tvOS tətbiqlərinin beta-test edilməsi üçün Apple-ın rəsmi xidmətidir. TestFlight vasitəsilə tərtibatçılar 10 000 xarici testçiyə qədər buraxılışqabağı build-ləri yayır, App Store-da nəşr etmədən rəylər və crash-reportlar toplayır. Apple Developer Documentation, 2025-ə görə, App Store-dakı tətbiqlərin 80%-dən çoxu buraxılış hazırlığı mərhələsində TestFlight-dan istifadə edir.
Əsas məlumat
TestFlight — App Store-da nəşr etmədən iOS tətbiqlərini test etmək üçün qanuni və yeganə rəsmi üsuldur. Xidmət Apple tərəfindən 2014-cü ildə eyni adlı şirkətin satın alınmasından sonra işə salınıb. TestFlight meydana gəlməzdən əvvəl tərtibatçılar mövsümdə 100 cihaz məhdudiyyəti olan Ad Hoc paylanmasından istifadə edirdilər — TestFlight bu məhdudiyyəti aradan qaldırdı və prosesi bir neçə klikə qədər sadələşdirdi.
iOS ciddi təhlükəsizlik siyasətinə malikdir: tətbiq yalnız App Store vasitəsilə və ya xüsusi sertifikatlardan istifadə etməklə qurula bilər. TestFlight tərtibatçı ilə testçi arasında proksi rolunu oynayaraq beta-test problemini həll edir: Apple build-i əsas tələblərə uyğunluğu yoxlayır, bundan sonra testçilər tətbiqi App Store-dan TestFlight tətbiqi vasitəsilə alırlar ki, bu da imzalanmamış fayllara etibar tələb etmir.
App Store xaricində iOS tətbiqlərini yaymağın üç yolu var: Ad Hoc (100 cihaz məhdudiyyəti, hər cihazın UDID-sini tələb edir), Enterprise (limitsiz şirkətdaxili yayım, Apple-ın 299 USD/il Enterprise sertifikatını tələb edir) və TestFlight (10 000 testçiyə qədər, pulsuz, UDID toplanması tələb olunmur). TestFlight beta-test üçün optimal seçimdir, Ad Hoc cihaz-spesifik testlər üçün, Enterprise isə korporativ tətbiqlər üçün uyğundur.
TestFlight vasitəsilə build nəşr etmə prosesi beş addımdan ibarətdir: Xcode-da yığma, Archive Organizer vasitəsilə App Store Connect-ə yükləmə, Apple tərəfindən emal, testçiləri dəvət etmə, TestFlight tətbiqi vasitəsilə tətbiqi quraşdırma. Hər addım layihənin mürəkkəbliyindən asılı olaraq bir neçə dəqiqədən bir saata qədər çəkir.
Build paylama sertifikatı və düzgün provisioning profile ilə yığılmalıdır. Apple yoxlayır: sertifikatın etibarlılığı, bundle identifier uyğunluğu, şəxsi API-lərin olmaması, nişanların düzgünlüyü (1024×1024) və App Store nişanının mövcudluğu. Build yoxlamadan keçməzsə — TestFlight problemi təsvir edən xəta göstərir.
Yükləmədən sonra build Apple-ın avtomatlaşdırılmış yoxlamasından keçir: binar kodun statik təhlili, rəqəmsal imzanın yoxlanması, şəxsi API-lər və malware üçün skan. Emal ilk build üçün 15 dəqiqədən 2 saata qədər, sonrakı build-lər üçün adətən 15–30 dəqiqə çəkir. Emal statusu App Store Connect-də Activity bölməsində göstərilir.
// TestFlight-ın Swift AppDelegate-də konfiqurasiyası
import UIKit
@main
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
// Yoxlama: tətbiqin TestFlight vasitəsilə qurulub-qurulmadığı
if Bundle.main.appStoreReceiptURL?.lastPathComponent
== "sandboxReceipt" {
print("Beta version via TestFlight")
}
return true
}
}
TestFlight testçiləri iki qrupa ayırır: daxili (Internal Testers) və xarici (External Testers). Fərq iştirakçıların sayında, build-lərə girişdə və Apple rəyinin zəruriliyindədir. Qrupun düzgün seçilməsi test prosesini sürətləndirir və App Store siyasətlərinə uyğunluğu təmin edir.
Apple Developer Program komandasının tərkibindən 100 iştirakçıya qədər. Daxili testçini dəvət etmək üçün App Store Connect-də onun Apple ID-sini əlavə etmək kifayətdir — o dərhal bütün build-lərə giriş əldə edir. Apple rəyi tələb olunmur. Gündəlik smoke-test və erkən mərhələlərdə funksiyaların yoxlanması üçün idealdır.
İnkişaf komandasına daxil olmayan 10 000 iştirakçıya qədər. Xarici testçilər üçün ilk build əsas Apple rəyindən keçir (adətən 1–2 gün). Əsas funksionallığa toxunmayan dəyişiklikləri olan sonrakı build-lər təkrar rəy olmadan keçə bilər. Xarici testçilər e-poçt və ya ictimai keçid vasitəsilə dəvət olunur.
| Parametr | Internal Testers | External Testers |
|---|---|---|
| Maks. sayı | 100 | 10 000 |
| Apple rəyi | Tələb olunmur | İlk build — məcburi |
| Dəvət | Komandadan Apple ID | E-poçt / ictimai keçid |
| Build-in etibarlılıq müddəti | 90 gün | 90 gün |
| Build-lərə giriş | Dərhal hamısına | Yalnız aktiv qruplar |
Build-i TestFlight-a yükləmək Xcode, Application Loader və ya xcrun vasitəsilə əmr sətri ilə həyata keçirilir. Ən geniş yayılmış üsul — layihə arxivini yaratdıqdan sonra Xcode Archive Organizer vasitəsilədir. Alternativ üsul — CI/CD Pipeline üçün Fastlane vasitəsilə avtomatlaşdırmadır.
Arxivi yığın (Product → Archive), Organizer-i açın, arxivi seçin və Distribute App düyməsini basın. Paylama metodu olaraq TestFlight-ı seçin, sertifikat və provisioning profile göstərin. Xcode build-i App Store Connect-ə yükləyəcək, o emaldan sonra görünəcək. Bütün proses ilk yükləmə üçün 10–20 dəqiqə çəkir.
Fastlane — build-ləri TestFlight-a yükləməyi avtomatlaşdırmaq üçün ən məşhur vasitədir. fastlane pilot əmri Xcode-u açmadan build yükləyir və testçiləri idarə edir. Fastlane-in CI/CD serveri ilə inteqrasiyası bütün testlər keçdikdən sonra build-ləri avtomatik olaraq TestFlight-da nəşr etməyə imkan verir.
# Fastfile — build-in TestFlight-a yüklənməsi
default_platform(:ios)
lane :beta do
# match vasitəsilə sertifikatların alınması
match(type: "appstore")
# Yığma və imzalama
build_app(
scheme: "MyApp",
export_method: "app-store",
workspace: "MyApp.xcworkspace"
)
# TestFlight-a yükləmə
pilot(
skip_waiting_for_build: true,
distribute_external: false,
notify_external_testers: false
)
end
Fastlane pilot avtomatik olaraq IPA-nı App Store Connect-ə yükləyir, emalı gözləyir (əgər skip_waiting_for_build = false olarsa) və build-i seçilmiş testçi qruplarına təyin edir. distribute_external: true əmri emaldan dərhal sonra build-i xarici testçilərə göndərir.
Fastlane olmadan xcrun istifadə edilə bilər: xcrun altool --upload-app --file path/to/app.ipa --username YOUR_APPLE_ID --password @keychain:AC_PASSWORD. altool Apple tərəfindən CI mühitləri üçün dəstəklənir və qrafik interfeys tələb etmir. Şifrə keychain və ya app-specific password vasitəsilə ötürülür — düz mətn şifrələrindən istifadə etməyin.
TestFlight bir neçə rəy mexanizmi təqdim edir: daxili rəy forması, crash-loqların avtomatik toplanması, istifadə metrikaları və ekran görüntüləri. Komanda beta-test üçün üçüncü tərəf SDK-larını tətbiq etmədən bütün məlumatları App Store Connect-də alır.
Testçi TestFlight tətbiqini açır, build-inizi seçir və Send Feedback düyməsini basır. Forma mətn rəyi göndərməyə, ekran görüntüsü əlavə etməyə və ciddilik dərəcəsini göstərməyə imkan verir. Bütün rəylər App Store Connect-də TestFlight → Feedback bölməsində toplanır. Tərtibatçı rəyə cavab verə bilər və testçi TestFlight tətbiqində bildiriş alacaq.
Tətbiq çökdükdə TestFlight avtomatik olaraq crash-report toplayır: çağrı yığını, OS versiyası, cihaz modeli və çökmə vaxtı. Crash-loqlar Xcode Organizer (Crashes) və App Store Connect (TestFlight → Crashes) bölməsində mövcuddur. Simvollu crash-loqlar əldə etmək üçün dSYM fayllarını build ilə birlikdə və ya ayrıca Xcode vasitəsilə yükləmək lazımdır.
TestFlight metrikaları göstərir: quraşdırmaların sayı, aktiv testçilər, sessiyalar və çökmələr. Analitika gündəlik yenilənir və testçilərin cəlbolunmasını qiymətləndirməyə kömək edir. Əgər bir həftə ərzində heç bir testçi tətbiqi açmayıbsa — qrupla ünsiyyəti və ya build-in keyfiyyətini yenidən nəzərdən keçirməyə dəyər.
TestFlight App Store-da nəşr prosesinin ayrılmaz hissəsidir. TestFlight vasitəsilə beta-testdən keçmiş eyni build yenidən yığılmadan Apple rəyinə göndərilə bilər — sadəcə App Store Connect-də düyməni basmaq kifayətdir. Bu, məhsul build-inin test edilmiş build-dən fərqlənmə riskini aradan qaldırır.
App Store Connect-də testdən keçmiş build-i seçin və Submit for Review düyməsini basın. Apple TestFlight-dan eyni build-i istifadə edir — təkrar yükləmə tələb olunmur. Rəy müddəti adətən 1–3 gündür. Build rədd edilərsə — qeydləri düzəldin, TestFlight-a yeni build yükləyin və prosesi təkrarlayın.
TestFlight-da son test mərhələsindən sonra rəyə göndərməzdən əvvəl 24–48 saat gözləmək tövsiyə olunur. Bu vaxt testçilərə avtomatik testlərdən keçə biləcək kritik səhvləri aşkar etməyə imkan verir. TestFlight-da Release candidate (RC) build — yetkin iOS komandalarının standart təcrübəsidir.
App Store-da buraxılış versiyası çıxdıqdan sonra TestFlight build-ləri avtomatik olaraq yeni quraşdırmalar üçün əlçatmaz olur. Beta versiyasını artıq quraşdırmış testçilər buraxılış dərc edildikdən sonra 30 gün ərzində ondan istifadə edə bilər, bundan sonra tətbiq açılmağı dayandırır. Testçilərin App Store versiyasına yeniləndiyinə əmin olun.
Tez-tez verilən suallar
TestFlight Apple Developer Program iştirakçıları üçün tamamilə pulsuzdur (99 USD/il). Xidmətdən istifadəyə görə əlavə ödəniş tələb olunmur, build-lərin və testçilərin sayından asılı olmayaraq. Yalnız Apple tərtibatçı abunəsi üçün ödəyirsiniz — TestFlight ona defolt olaraq daxildir.
Xeyr, TestFlight Apple ekosisteminin müstəsna xidmətidir. Android üçün Google Play Console-da analoji vasitə mövcuddur — Internal Testing və Open Testing trekləri. Android-də beta versiyalarını nəşr etmək üçün həmçinin Firebase App Distribution və DeployGate istifadə olunur.
Emal yükləmədən sonra ilk build üçün 15 dəqiqədən 2 saata qədər çəkir. Sonrakı build-lər daha sürətli işlənir — adətən 15–30 dəqiqə. Emal müddəti Apple serverlərinin yükündən asılıdır. Statusu App Store Connect-də Activity bölməsində izləmək olar.
Hər build yükləmə anından etibarən 90 gün müddətində test üçün əlçatandır. Build sayı məhdud deyil, lakin eyni anda 30-dan çox build aktiv ola bilməz. Köhnə build-lər müddət bitdikdə və ya limitə çatdıqda avtomatik silinir.
TestFlight vasitəsilə testdə iştirak etmək üçün Apple ID tələb olunur. Xarici testçilər e-poçt keçidi vasitəsilə dəvət olunur — keçid ilk dəfə açıldıqda sistem hələ yoxdursa Apple ID yaratmağı təklif edəcək. İctimai keçid sosial şəbəkələrdə və ya bloqda yaymaq üçün də mövcuddur.
Nəticə
Açar təslim mobil tətbiq hazırlayacağıq
IT Sectr 2017-ci ildən startaplar və bizneslər üçün iOS və Android tətbiqləri yaradır. Sizə məsləhət verəcəyik və ən yaxşı həlli təklif edəcəyik.
Həm də oxuyun