Firebase Test Lab ile Android için test yapmaya başlayın

Firebase Test Lab, uygulamanızı çeşitli cihaz ve yapılandırmalarda test etmenize olanak tanır. Bu Başlangıç ​​kılavuzu, takip etmeniz için bir uygulama yolunun yanı sıra Test Lab'ın Android tekliflerine bir giriş sağlar.

Test Lab kotaları ve fiyatlandırma planları hakkında bilgi için bkz. Kullanım, Kotalar ve Fiyatlandırma .

Anahtar kavramlar

Seçtiğiniz cihazlara ve yapılandırmalara karşı bir test veya bir dizi test senaryosu çalıştırdığınızda, Test Lab, testi uygulamanızda toplu olarak çalıştırır ve ardından sonuçları bir test matrisi olarak görüntüler.

Cihazlar × Test Uygulamaları = Test Matrisi

Cihaz
Test yaptığınız telefon, tablet veya giyilebilir cihaz gibi fiziksel veya sanal bir cihaz (yalnızca Android). Test matrisindeki cihazlar, cihaz modeline, işletim sistemi sürümüne, ekran yönüne ve yerel ayara (coğrafya ve dil ayarları olarak da bilinir) göre tanımlanır.
Test, test yürütme
Bir cihazda çalıştırılacak bir test (veya bir dizi test senaryosu). Cihaz başına bir test çalıştırabilir veya isteğe bağlı olarak testi parçalayabilir ve test senaryolarını farklı cihazlarda çalıştırabilirsiniz.
Test matrisi
Test yürütmelerinize ilişkin durumları ve test sonuçlarını içerir. Bir matristeki herhangi bir test yürütmesi başarısız olursa, matrisin tamamı başarısız olur.

Adım 1 : Testinizi Test Lab'a yüklemek üzere hazırlayın

Mevcut test türleri

Aşağıdaki testleri Test Lab ile çalıştırabilirsiniz. Tüm test türlerinin fiziksel cihazlarda 45 dakika, sanal cihazlarda 60 dakika çalıştırılmasıyla sınırlı olduğunu unutmayın. Yakalanmayan herhangi bir istisna, testin başarısız olmasına neden olur.

  • Enstrümantasyon testi veya aletli birim testi : Espresso veya UI Automator çerçevelerini kullanarak yazdığınız bir test. Bu testle, AndroidJUnitRunnerAPIs kullanarak doğru işlevselliği doğrulamak için uygulamanızın durumu hakkında açık iddialarda bulunabilirsiniz.

  • Robo testi : Uygulamanızın kullanıcı arayüzünü analiz eden ve ardından herhangi bir kod yazmanıza gerek kalmadan kullanıcı etkinliklerini simüle ederek onu metodik olarak araştıran otomatik bir test. Daha fazla bilgi için Robot testleri Hakkında sayfasını ziyaret edin.

  • Oyun Döngüsü testi : Oyun uygulamalarındaki oyuncu eylemlerini 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. Game Loop testini ç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 yürütmesinde çalıştırılacak birden fazla döngü oluşturun (daha fazla bilgi edinmek için Oyun Döngüsü testleri Hakkında sayfasını ziyaret edin). Ayrıca etiketleri kullanarak döngüleri düzenleyebilir, böylece onları takip edebilir ve belirli döngüleri yeniden çalıştırabilirsiniz.

    Bu testi Test Lab ile çalıştırma talimatları için bkz . Oyun Döngüsü testi çalıştırma .

Testinizi çalıştırmaya yönelik araçlar

Testinizi çalıştırmak için aşağıdaki araçları seçebilirsiniz:

  • İlk kez kullananlar için önerilir : Firebase konsolu, bir uygulamayı yüklemenize ve web tarayıcınızdan testi başlatmanıza olanak tanır. Bu aracı kullanarak testleri çalıştırma talimatları için Firebase konsoluyla test etme bölümüne bakın.

  • Android Studio entegrasyonu, uygulamanızı geliştirme ortamınızdan ayrılmadan test etmenize olanak tanır. Bu aracı kullanarak testleri çalıştırma talimatları için Android Studio ile Test Etme konusuna bakın.

  • gcloud komut satırı arayüzü, testleri komut satırından etkileşimli olarak çalıştırmanıza olanak tanır ve ayrıca otomatik derleme ve test sürecinizin bir parçası olarak komut dosyası oluşturmaya da çok uygundur. Bu aracı kullanarak testleri çalıştırma talimatları için bkz. gcloud CLI ile test etme .

Uygulamanızın APK dosyalarını alfa veya beta kanalını kullanarak Play Store'a yükleyip yayınladığınızda da uygulamanızı Test Lab ile ücretsiz olarak test edebilirsiniz. Daha fazla bilgi için bkz. Sorunları tanımlamak için lansman öncesi raporları kullanma ve Robo testleri .

Adım 2 : Test cihazınızı seçin

Test Lab, bir Google veri merkezinde kurulu ve çalışan çeşitli marka ve modellerdeki Android cihazları üzerinde test yapılmasını destekler. Test Lab'deki cihazlarda test yapmak, uygulamanızı Android Studio'daki emülatörleri kullanarak test ederken oluşmayabilecek sorunları tespit etmenize yardımcı olur. Daha fazla bilgi edinmek için bkz. Kullanılabilir cihazlar.

3. Adım : Test sonuçlarını gözden geçirin

Testlerinizi nasıl başlatırsanız başlatın, tüm test sonuçlarınız Test Lab tarafından yönetilir ve çevrimiçi olarak görüntülenebilir.

Test sonucu özeti otomatik olarak saklanır ve Firebase konsolunda görüntülenebilir. Test senaryosuna özel videolar, ekran görüntüleri, başarılı olan, başarısız olan veya hatalı sonuçlar alan testlerin sayısı ve daha fazlası dahil olmak üzere testinizle en alakalı verileri içerir.

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 ayrıntı için bkz. Firebase Test Laboratuvarı Sonuçlarını Analiz Etme.

Android Studio'dan bir test başlattığınızda, test sonuçlarını geliştirme ortamınızın içinden de inceleyebilirsiniz.

Cihaz temizleme

Google, uygulama verilerinizin güvenliğini çok ciddiye alır. Yeni testler çalıştırmaya 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ındaki en iyi uygulamaları takip ediyoruz. Özel bir kurtarma görüntüsüyle flashlayabildiğimiz cihazlar için, bu cihazları test çalıştırmaları arasında flashlayarak bir adım daha ileri gidiyoruz.

Test Lab tarafından kullanılan sanal cihazlar için, 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 Laboratuvarı ve Google Play hizmetleri

Test Lab cihazları genellikle Google Play hizmetleri SDK'sının en son sürümünde çalışır ancak bazılarının, SDK'nın yeni bir sürümü yayınlandıktan sonra güncellenmesi 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ız üzerinden rota açmak için aşağıdaki IP adresi bloklarını kullanarak Test Lab'ın fiziksel ve sanal cihazlarına erişime izin verebilirsiniz.

Mobil reklamcılık

Test Lab, uygulama testini otomatikleştiren ölçeklenebilir bir altyapı sağlar ve ne yazık ki bu yetenek, sahte reklam geliri elde etmek üzere tasarlanmış kötü amaçlı uygulamalar tarafından kötüye kullanılabilir.

Bu sorunu azaltmak için:

  • Üçüncü taraf dijital reklam sağlayıcıları (örneğin, reklam ağları veya talep tarafı platformları) kullanıyorsanız veya onlarla çalışıyorsanız, uygulama geliştirme ve test etme sırasında gerçek reklamlar yerine test reklamlarını kullanmanız önerilir.

  • Testinizde gerçek reklamlar kullanmanız gerekiyorsa, aşağıdaki IP adresi bloklarını kullanarak gelirleri ve Test Lab'den oluşturulan tüm ilgili trafiği filtrelemeleri için birlikte çalıştığınız dijital reklam sağlayıcılarına bilgi verin. Google'ın sahibi olduğu reklam sağlayıcılara bildirimde bulunmanıza gerek yoktur; Test Laboratuvarı bunu sizin için halleder.

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 CLI'deki gcloud beta firebase test ip-blocks list komutunu kullanarak da erişebilirsiniz. Liste ortalama yılda bir kez güncellenmektedir.

Platform ve cihaz türü CIDR IP adresi bloğu
Android ve iOS fiziksel cihazları, Sanal cihazları kollayın

70.32.128.0/19 (02-2022'de eklendi)

108.177.6.0/23

108.177.18.192/26 (02-2022'de eklendi)

108.177.29.64/27 (02-2022'ye kadar genişletildi)

108.177.31.160/27 (02-2022'de eklendi)

199.36.156.8/29 (02-2022'de eklendi)

199.36.156.16/28 (02-2022'de eklendi)

209.85.131.0/27 (02-2022'de eklendi)

2001:4860:1008::/48 (02-2022'de eklendi)

2001:4860:1018::/48 (02-2022'de 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)

Android sanal cihazları (Kullanım Dışı)

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'da eklendi)

34.74.10.72/29 (02-2022'de eklendi)

34.136.2.136/29 (02-2022'de eklendi)

34.136.50.136/29 (02-2022'de 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 (02-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 (02-2022'de kaldırıldı)

216.239.44.24/29 (02-2022'de kaldırıldı)