Firebase Test Lab, uygulamanızı çeşitli cihaz ve yapılandırmalarda test etmenize olanak tanır. Bu Başlangıç Kılavuzu, uygulamanız gereken bir uygulama yolunun yanı sıra Test Lab'ın Android tekliflerine giriş sunar.
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
Seçtiğiniz cihazlar ve yapılandırmalarda bir test veya test durumu grubu çalıştırdığınızda, Test Lab, testi uygulamanızda toplu olarak çalıştırır, ardından sonuçları test matrisi olarak gösterir.
Cihazlar × Test Çalıştırmaları = Test Matrisi
- Cihaz
- Telefon, tablet veya giyilebilir cihaz gibi üzerinde test çalıştırdığınız fiziksel ya da sanal bir cihaz (yalnızca Android). Test matrisindeki cihazlar; cihaz modeli, işletim sistemi sürümü, ekran yönü ve yerel ayar (coğrafi bölge ve dil ayarları olarak da bilinir) ile tanımlanır.
- Test etme, test yürütme
- 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 bölebilerek test durumlarını farklı cihazlarda çalıştırabilirsiniz.
- Test matrisi
- Test çalıştırmalarınızın durumlarını ve test sonuçlarını içerir. Matristeki herhangi bir test yürütmesi başarısız olursa matrisin tamamı başarısız olur.
1. adım: Testinizi Test Lab'e yüklemeye hazırlayın
Kullanılabilir test türleri
Test Lab ile aşağıdaki testleri çalıştırabilirsiniz. Tüm test türlerinin fiziksel cihazlarda 45 dakika, sanal cihazlarda ise 60 dakika çalıştırılmakla sınırlı olduğunu unutmayın. Yakalanmadığında istisnalar testin başarısız olmasına neden olur.
Araç testi veya araçlı birim testi: Espresso veya UI Automator çerçevelerini kullanarak yazdığınız testtir. Bu testle doğru işlevselliği doğrulamak için AndroidJUnitRunnerAPIs kullanarak uygulamanızın durumu hakkında açık iddialarda bulunabilirsiniz.
Testinizi Test Lab'de çalıştırmaya hazırlama talimatları için Araç testi çalıştırma başlıklı makaleyi inceleyin.
Enstrümantasyon testi oluşturma talimatları için Android Developers dokümanlarına bakın.
Robo test: Uygulamanızın kullanıcı arayüzünü analiz eden ve ardından kod yazmanıza gerek kalmadan kullanıcı etkinliklerini simüle ederek sistematik bir şekilde keşfeden otomatik bir testtir. Daha fazla bilgi için Robo testleri hakkında başlıklı makaleyi inceleyin.
Oyun Döngüsü testi: Oyun uygulamalarındaki oyuncu hareketlerini simüle etmek için "demo modu" kullanan bir testtir. 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 yazma
Farklı kullanıcı arayüzleri veya test çerçeveleri için aynı kodu yazmamak
İsteğe bağlı olarak tek bir test yürütme işleminde çalıştırılacak birden fazla döngü oluşturabilirsiniz (daha fazla bilgi edinmek için Oyun döngüsü testleri hakkında başlıklı makaleyi inceleyin). Döngüleri etiketler kullanarak da düzenleyebilirsiniz. Böylece bunları takip edebilir ve belirli döngüleri yeniden çalıştırabilirsiniz.
Bu testi Test Lab ile çalıştırma talimatları için Oyun Döngüsü testi çalıştırma başlıklı makaleyi inceleyin.
Testinizi çalıştıracağınız araçlar
Testinizi çalıştırmak için aşağıdaki araçları seçebilirsiniz:
İlk kez kullananlar için önerilir: Firebase Konsolu, uygulama yüklemenize ve web tarayıcınızdan test başlatmanıza olanak tanır. Bu aracı kullanarak test çalıştırmayla ilgili talimatlar için Firebase konsoluyla test etme başlıklı makaleyi inceleyin.
Android Studio entegrasyonu, geliştirme ortamınızdan ayrılmadan uygulamanızı test etmenize olanak tanır. Bu aracı kullanarak test çalıştırmayla ilgili talimatlar için Android Studio ile Test Etme bölümüne bakın.
gcloud komut satırı arayüzü, 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şturmaya da uygundur. Bu aracı kullanarak test çalıştırma talimatları için gcloud CLI ile test etme başlıklı makaleyi inceleyin.
Ayrıca, uygulamanızın APK dosyalarını alfa veya beta kanalını kullanarak Play Store'a yükleyip yayınladığınızda Test Lab ile uygulamanızı ücretsiz olarak test edebilirsiniz. Daha fazla bilgi için Sorunları tanımlamak için lansman öncesi raporları kullanma ve Robo testler başlıklı makaleleri inceleyin.
2. adım: Test cihazınızı seçin
Test Lab, Google veri merkezinde yüklü ve çalışan çeşitli Android cihaz marka ve modellerinde test yapmayı destekler. Test Lab uygulamasındaki cihazlarda test yapmak, Android Studio'daki emülatörleri kullanarak uygulamanızı test ederken ortaya çıkabilecek sorunları tespit etmenize yardımcı olur. Daha fazla bilgi için Kullanılabilir cihazlar bölümüne bakın.
3. 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 yönetir ve internette görüntüleyebilirsiniz.
Test sonucu özeti otomatik olarak depolanır ve Firebase konsolunda görüntülenebilir. Bu rapor, test durumuna özel videolar, ekran görüntüleri, başarılı, başarısız veya güvenilir sonuçlar alan testlerin sayısı ve daha fazlası da dahil olmak üzere testinizle en alakalı verileri içerir.
Ham test sonuçları, test günlüklerini ve uygulamadaki hata ayrıntılarını içerir ve otomatik olarak bir Google Cloud paketinde depolanır. Bir paket belirtirseniz depolama alanı maliyetinden siz sorumlu olursunuz. 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.
Android Studio'dan bir test başlattığınızda test sonuçlarını geliştirme ortamınızdan da inceleyebilirsiniz.
Cihaz temizliği
Google, uygulama verilerinizin güvenliğini çok ciddiye alır. Yeni testler yapmaya hazır olduklarından emin olmak amacıyla, her test çalıştırmasından sonra fiziksel cihazların uygulama verilerini kaldırmak ve sistem ayarlarını sıfırlamak için endüstri standardı en iyi uygulamaları kullanırız. Özel bir kurtarma görüntüsü ile gösterebileceğimiz cihazlar için, test çalışmaları arasında bu cihazları yanıp söndürerek bir adım daha ileri gideriz.
Test Lab tarafından kullanılan sanal cihazlarda, her test çalıştırmasında yeni bir sanal cihaz örneğinin kullanılması için cihaz örnekleri kullanıldıktan sonra silinir.
Test Lab ve Google Play Hizmetleri
Test Lab cihazlar genellikle Google Play Hizmetleri SDK'sının en son sürümünü çalıştırır ancak bazı cihazlarda SDK'nın yeni sürümü yayınlandıktan sonra güncellemenin yapılması birkaç gün sürebilir. Bazı cihazlarda uyumluluk sorunlarıyla karşılaşabileceğinizi unutmayın.
Test cihazlarının özel arka uç sunucularına erişmesine izin verme
Bazı mobil uygulamaların, test sırasında düzgün ç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 rotaları açmak için aşağıdaki IP adresi bloklarını kullanarak Test Lab'ün 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. Ne yazık ki bu özellik, sahte reklam geliri elde etmek için tasarlanmış kötü amaçlı uygulamalar tarafından kötüye kullanılabilir.
Bu sorunu azaltmak için:
Üçüncü taraf dijital reklamcılık sağlayıcıları (ör. reklam ağları veya talep tarafı platformları) kullanıyorsanız veya onlarla çalışıyorsanız uygulama geliştirme ve test sırasında gerçek reklamlar yerine test reklamları kullanmanız önerilir.
Testinizde gerçek reklamlar kullanmanız gerekiyorsa birlikte çalıştığınız dijital reklamcılık sağlayıcılarını, aşağıdaki IP adresi bloklarını kullanarak Test Lab'ten elde edilen gelirleri ve tüm ilgili trafiği filtrelemeleri konusunda bilgilendirin. Google'ın sahip olduğu reklam sağlayıcılarıyla ilgili bildirimde bulunmanız gerekmez. Test Lab bu işi sizin yerinize yapar.
Test Lab cihazları 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 KSA'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 bloğu |
---|---|
Android ve iOS fiziksel cihazlar, Arm sanal cihazlar |
32.128.0/19 (02.2022 tarihinde eklendi) 108.177.6.0/23 108.177.18.192/26 (2022-02 tarihinde eklendi) 108.177.29.64/27 (2022'nin 2. ayında genişletildi) 108.177.31.160/27 (2022-02 tarihinde eklendi) 199.36.156.8/29 (2022-02 tarihinde eklendi) 36.156.16/28 (02.02.2022 eklendi) 209.85.131.0/27 (02.02.2022 eklendi) 2001:4860:1008::/48 (02-2022'de eklendi) 2001:4860:1018::/48 (02-2022 eklendi) 2001:4860:1019::/48 (02-2022'de eklendi) 2001:4860:1020::/48 (02-2022'de eklendi) 2001:4860:1022::/48 (02-2022'de eklendi) 70.32.128.48/28 (04-2024'te eklendi) |
Android sanal cihazlar (Kolsuz) |
34.68.194.64/29 (11-2019'da eklendi) 34.69.234.64/29 (11-2019'da eklendi) 34.73.34.72/29 (11-2019'da eklendi) 34.73.178.72/29 (11.2019 tarihinde eklendi) 34.74.10.72/29 (2022-02 tarihinde eklendi) 34.136.2.136/29 (02.02.2022 eklendi) 34.136.50.136/29 (02.02.2022 eklendi) 34.145.234.144/29 (02.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 (7-2019'da eklendi) 35.245.243.240/29 (2022-02 eklendi) 199.192.115.0/30 199.192.115.8/30 199.192.115.16/29 |
Cihaz IP engellemeleri artık kullanılmıyor |
74.125.122.32/29 (02.2022'de kaldırıldı) 216.239.44.24/29 (2022-02'de kaldırıldı) |