Firebase Test Lab, uygulamanızın kalitesini çeşitli cihazlarda ve yapılandırmalarda test etmenize olanak tanır. Bu kılavuzda, Test Lab ile ilgili temel kavramlara ve iOS tekliflerine genel bir bakış sunulmakta ve test etmeye nasıl başlayacağınızla ilgili talimatlar verilmektedir.
Test Lab kotaları ve fiyatlandırma planları hakkında bilgi edinmek için Kullanım, Kotalar ve Fiyatlandırma başlıklı makaleyi inceleyin.
Temel kavramlar ve terimler
Seçtiğiniz cihazlar ve yapılandırmalar için bir test veya bir dizi test durumu çalıştırdığınızda Test Lab, testi uygulamanızda toplu olarak çalıştırır ve sonuçları test matrisi olarak gösterir.
Cihazlar × Test İşlemleri = Test Matrisi
- Cihaz
- Üzerinde test çalıştırdığınız fiziksel veya sanal cihaz (yalnızca Android). Örneğin, telefon, tablet veya giyilebilir cihaz. Test matrisindeki cihazlar; cihaz modeli, OS sürümü, ekran yönü ve yerel ayar (coğrafya ve dil ayarları olarak da bilinir) ile tanımlanır.
- Test, test işlemi
- Cihazda çalıştırılacak bir test (veya bir dizi test durumu). Cihaz başına bir test çalıştırabilir veya isteğe bağlı olarak testi parçalara ayırıp test durumlarını farklı cihazlarda çalıştırabilirsiniz.
- Test matrisi
- Test işlemlerinizin durumlarını ve test sonuçlarını içerir. Bir matristeki herhangi bir test işlemi başarısız olursa matrisin tamamı başarısız olur.
1. adım: Testinizi Test Lab platformuna yüklemek için hazırlayın.
Test Lab ile aşağıdaki testleri çalıştırabilirsiniz. Tüm test türlerinin fiziksel cihazlarda en fazla 45 dakika çalışabileceğini ve yakalanmayan tüm istisnaların testin başarısız olmasına neden olacağını unutmayın.
XCTest (XCUITest'ler dahil): XCTest çerçevesini kullanarak yazdığınız birim testi. XCTest'i Test Lab ile çalışacak şekilde değiştirme talimatları için XCTest oluşturma sayfasını ziyaret edin.
Robo test: Uygulamanızın kullanıcı arayüzünü analiz eden ve ardından kullanıcı etkinliklerini simüle ederek metodik bir şekilde keşfeden otomatik bir testtir. Bu test için herhangi bir kod yazmanız gerekmez. Daha fazla bilgi için Robo testleri hakkında başlıklı makaleyi inceleyin.
Oyun Döngüsü testi: Oyun uygulamalarında oyuncu işlemlerini simüle etmek için "demo modu" kullanan bir test. Bu, oyununuzun kullanıcılar için iyi performans gösterdiğini doğrulamanın hızlı ve ölçeklenebilir bir yoludur. Oyun döngüsü testi çalıştırmayı seçtiğinizde şunları yapabilirsiniz:
Oyun motorunuza özgü testler yazın.
Farklı kullanıcı arayüzleri veya test çerçeveleri için aynı kodu yazmaktan kaçının.
İsteğe bağlı olarak, tek bir test işleminde çalıştırılacak birden fazla döngü oluşturabilirsiniz. Ayrıca, etiketleri kullanarak döngüleri düzenleyebilir, böylece döngüleri takip edebilir ve belirli döngüleri yeniden çalıştırabilirsiniz.
Test Lab uygulamasında testinizi nasıl çalıştıracağınızla ilgili talimatlar için Oyun Döngüsü testi çalıştırma sayfasını ziyaret edin.
2. adım: Testinizi çalıştırmak için bir araç seçin
Testinizi çalıştırmak için aşağıdaki araçları seçebilirsiniz:
Firebase Console, istediğiniz yerden uygulama yüklemenize ve test başlatmanıza olanak tanır. Bu aracın kullanımıyla ilgili talimatlar için Firebase konsoluyla test etme başlıklı makaleyi inceleyin.
gcloud komut satırı arayüzü (CLI), komut satırından etkileşimli olarak test çalıştırmanıza olanak tanır ve otomatik derleme ve test sürecinizin bir parçası olarak komut dosyası oluşturmak için de uygundur. Bu aracın kullanımıyla ilgili talimatlar için gcloud CLI ile test etme başlıklı makaleyi inceleyin.
Gerçek cihazlarda test etmeden önce, testinizi yerel olarak bir simülatörde çalıştırarak istediğiniz gibi davrandığından emin olun. Talimatlar için Yerel olarak test etme bölümüne bakın.
3. adım: Test cihazlarını belirtme
Test Lab ile testinizi, Google veri merkezinde barındırılan çok çeşitli iOS cihazları ve modellerinde uygulamanızda çalıştırabilirsiniz. Daha fazla bilgi için Kullanılabilir cihazlar başlıklı makaleyi inceleyin.
4. adım: Test sonuçlarını inceleyin
Testlerinizi nasıl başlattığınızdan bağımsız olarak tüm test sonuçlarınız Test Lab tarafından yönetilir ve online olarak görüntülenebilir.
Test sonucu özeti otomatik olarak depolanır ve Firebase konsolunda görüntülenebilir. Bu sekmede, test durumuyla ilgili videolar, ekran görüntüleri, başarılı, başarısız veya tutarsız sonuçlar veren testlerin sayısı ve daha fazlası dahil olmak üzere testinizle ilgili en alakalı veriler yer alır.
Ham test sonuçları, test günlüklerini ve uygulama hatası ayrıntılarını içerir ve otomatik olarak bir Google Cloud paketinde depolanır. Bir paket belirtirseniz depolama maliyetinden siz sorumlu olursunuz. Bir paket belirtmezseniz Test Lab sizin için ücretsiz olarak bir paket oluşturur.
Daha fazla bilgi için Firebase Test Lab sonuçlarını analiz etme başlıklı makaleyi inceleyin.
Cihaz temizliği
Google, uygulama verilerinizin güvenliğini çok ciddiye alır. Fiziksel cihazların yeni testleri çalıştırmaya hazır olmasını sağlamak için her test çalıştırmasından sonra uygulama verilerini kaldırma ve sistem ayarlarını sıfırlama konusunda endüstri standardı en iyi uygulamaları takip ederiz. Özel kurtarma görüntüsüyle flaşlayabildiğimiz cihazlarda, test çalıştırmaları arasında bu cihazları flaşlayarak bir adım daha ileri gidiyoruz.
Test Lab tarafından kullanılan sanal cihazlarda, cihaz örnekleri kullanıldıktan sonra silinir. Böylece her test çalıştırmasında yeni bir sanal cihaz örneği kullanılır.
Test Lab cihazın özel arka uç sunucularına erişmesine izin veriliyor
Bazı mobil uygulamaların, test sırasında doğru şekilde çalışması için özel arka uç hizmetleriyle iletişim kurması gerekir. Arka uç sunucularınız güvenlik duvarı kurallarıyla korunuyorsa güvenlik duvarınızda rota açmak için aşağıdaki IP adresi bloklarını kullanarak Test Lab'in fiziksel ve sanal cihazlarına erişim izni verebilirsiniz.
Mobil reklamcılık
Test Lab, uygulama testini otomatikleştiren ölçeklenebilir bir altyapı sağlar. Maalesef bu özellik, sahte reklam geliri elde etmek için tasarlanmış kötü amaçlı uygulamalar tarafından kötüye kullanılabilir.
Bu sorunu gidermek için:
Üçüncü taraf dijital reklamcılık sağlayıcıları (ör. reklam ağları veya talep tarafı platformları) kullanıyorsanız ya da bunlarla çalışıyorsanız uygulama geliştirme ve test aşamasında gerçek reklamlar yerine test reklamları kullanmanız önerilir.
Testinizde gerçek reklamlar kullanmanız gerekiyorsa aşağıdaki IP adresi bloklarını kullanarak Test Lab tarafından oluşturulan gelirleri ve ilgili tüm trafiği filtrelemeleri için birlikte çalıştığınız dijital reklamcılık sağlayıcılarını bilgilendirin. Google'a ait reklam sağlayıcıları bilgilendirmeniz gerekmez. Test Lab bu işlemi sizin yerinize yapar.
Test Lab cihaz tarafından kullanılan IP adresleri
Test Lab cihazları tarafından oluşturulan tüm ağ trafiği, aşağıdaki IP adresi bloklarından kaynaklanır.
Bu listeye gcloud CLI'daki gcloud beta firebase test ip-blocks list
komutunu kullanarak da erişebilirsiniz. Liste ortalama yılda bir kez güncellenir.
| Platform ve cihaz türü | CIDR IP adresi bloku |
|---|---|
| Android ve iOS fiziksel cihazlar, Arm sanal cihazlar |
70.32.128.0/19 (Şubat 2022'de eklendi) 108.177.6.0/23 108.177.18.192/26 (Şubat 2022'de eklendi) 108.177.29.64/27 (Şubat 2022'de genişletildi) 108.177.31.160/27 (Şubat 2022'de eklendi) 199.36.156.8/29 (Şubat 2022'de eklendi) 199.36.156.16/28 (Şubat 2022'de eklendi) 209.85.131.0/27 (Şubat 2022'de eklendi) 2001:4860:1008::/48 (Şubat 2022'de eklendi) 2001:4860:1018::/48 (Şubat 2022'de eklendi) 2001:4860:1019::/48 (Şubat 2022'de eklendi) 2001:4860:1020::/48 (Şubat 2022'de eklendi) 2001:4860:1022::/48 (Şubat 2022'de eklendi) 2001:4860:101d::/48 (Ekim 2025'te eklendi) 2001:4860:101e::/48 (Ekim 2025'te eklendi) 2001:4860:1031::/48 (Ekim 2025'te eklendi) 70.32.128.48/28 (Nisan 2024'te eklendi) 70.32.150.192/27 (Eylül 2025'te eklendi) 108.177.6.0/27 (Eylül 2025'te eklendi) 108.177.24.160/27 (Eylül 2025'te eklendi) 108.177.29.0/27 (Eylül 2025'te eklendi) 108.177.25.128/27 (Mayıs 2026'da eklendi) 108.177.26.128/26 (Mayıs 2026'da eklendi) 108.177.29.192/26 (Mayıs 2026'da eklendi) 172.217.120.64/26 (Mayıs 2026'da eklendi) 172.217.120.128/26 (Mayıs 2026'da eklendi) 2001:4860:1037::/48 (Mayıs 2026'da eklendi) 2001:4860:1038::/48 (Mayıs 2026'da eklendi) 2001:4860:103a::/48 (Mayıs 2026'da eklendi) |
| Android sanal cihazları (ARM olmayan) |
34.68.194.64/29 (Kasım 2019'da eklendi) 34.69.234.64/29 (Kasım 2019'da eklendi) 34.73.34.72/29 (Kasım 2019'da eklendi) 34.73.178.72/29 (Kasım 2019'da eklendi) 34.74.10.72/29 (Şubat 2022'de eklendi) 34.136.2.136/29 (Şubat 2022'de eklendi) 34.136.50.136/29 (Şubat 2022'de eklendi) 34.145.234.144/29 (Şubat 2022'de eklendi) 35.192.160.56/29 35.196.166.80/29 35.196.169.240/29 35.203.128.0/28 35.234.176.160/28 35.243.2.0/27 (Temmuz 2019'da eklendi) 35.245.243.240/29 (Şubat 2022'de eklendi) 199.192.115.0/30 199.192.115.8/30 199.192.115.16/29 |
| Cihaz IP blokları artık kullanılmıyor |
74.125.122.32/29 (Şubat 2022'de kaldırıldı) 216.239.44.24/29 (Şubat 2022'de kaldırıldı) |