Google is committed to advancing racial equity for Black communities. See how.
Bu sayfa, Cloud Translation API ile çevrilmiştir.
Switch to English

Enstrümantasyon testlerine başlayın

Enstrümantasyon testi , Espresso ve UI Automator 2.0 Android test çerçevelerini kullanarak uygulamanızı test etmek için sizin veya ekibiniz tarafından özel olarak yazılmış bir testtir. Test Lab, bu süre içinde yürütmeyi tamamlayan tüm test senaryoları için sonuçlar sağlar.

Bir enstrümantasyon testi yazdığınızda, uygulamanız için APK modülüyle birlikte daha sonra Test Lab'a yükleyeceğiniz ikinci bir APK modülü oluşturursunuz. Test APK'ları oluşturma hakkında bilgi edinmek için bkz . Uygulamanızı test edin .

Enstrümantasyon testi zaman aşımı

Enstrümantasyon testlerinin fiziksel cihazlarda 45 dakikaya ve sanal cihazlarda 60 dakikaya kadar çalışmasına izin verilir.

Orchestrator ile testleri bağımsız olarak çalıştırın

Android Test Orkestratörü , uygulamanızın her enstrümantasyon testini bağımsız olarak çalıştırmanıza olanak tanır. Test Lab her zaman Orchestrator'ın en son sürümünü kullanır. Orchestrator'ı kullanmanın birkaç avantajı ve bir dezavantajı vardır:

Artıları:

  • Paylaşılan durum yok: Her test kendi enstrümantasyon örneğinde çalışır, böylece paylaşılan bir durum testler arasında birikmez.
  • İzole çökmeler: Bir test çökerse, yalnızca o araç sonlandırılır ve paketinizdeki diğer testler yine de çalışabilir.

Con:

Orkestratörü etkinleştir

Orchestrator for Test Lab'i etkinleştirmek için, enstrümantasyon test kurulumunda, Ek seçenekler > Orkestratör ile Çalıştır'a tıklayın.

Parçalama ile testleri hızlandırın

Test parçalama, bir dizi testi ayrı ayrı çalışan alt gruplara (parçalara) böler. Test Lab, her bir parçayı birden fazla cihaz kullanarak paralel olarak otomatik olarak çalıştırır ve tüm test setini daha kısa sürede tamamlar.

N parça oluşturduğunuzu varsayalım. Test Lab, seçtiğiniz her cihaz için N adet aynı cihazı döndürür ve her cihazda testlerin bir alt kümesini çalıştırır. Bu, parçalanmış test senaryolarının, her cihaz için her zaman bir test çalıştırmasıyla sonuçlanan parçalanmamış test senaryolarının aksine, cihaz başına birden çok test yürütmesine neden olabileceği anlamına gelir (Test Laboratuvarı'ndaki temel kavramlara hızlı bir genel bakış için bkz. Anahtar kavramlar ).

Test parçaları için faturalandırma

Test Lab, AndroidJUnitRunner'ın yerleşik parçalama mekanizmasından yararlanarak parçalarınızı uygular . Boş parçaları döndürmek için ücretlendirilmekten kaçınmak için (atanmış test durumları olmayan parçalar), oluşturduğunuz parça sayısı toplam test durumu sayısından az olmalıdır. Her bir test senaryosunun çalışması ne kadar sürdüğüne bağlı olarak, genellikle parça başına 2-10 test durumu atamak iyi bir fikirdir.

Faturalama hakkında daha fazla bilgi için Kullanım, kotalar ve faturalama bölümünü okuyun.

Test parçalamayı etkinleştir

Firebase Konsolu'nu kullanarak test parçalamayı etkinleştirebilirsiniz. Test parçalamayı etkinleştirmek için:

  1. Enstrümantasyon testi kurulumunda, Ek seçenekler öğesine tıklayın.

  2. Sharding bölümünde çalıştırmak istediğiniz parça sayısını girin.

Ekran görüntüsü alma

Aşağıdaki talimatlar, Test Lab'in ekran görüntüsü kitaplığını uygulamanıza nasıl ekleyeceğinizi ve bu kitaplığı testinizden nasıl çağıracağınızı açıklamaktadır. Test Lab, Espresso test çerçevesi kullanılarak yazılan testler gibi enstrümantasyon testlerini çalıştırırken ekran görüntüsü almak için kullanabileceğiniz bir kitaplık sağlar. Testiniz çalıştırıldıktan sonra, Android Studio veya Firebase konsolunda ekran görüntülerini inceleyebilirsiniz.

Testinizi ekran görüntüsü alma için etkinleştirmek üzere şu kitaplığı ekleyin: cloudtestingscreenshotter_lib.aar . Ekran görüntüsü alma özelliğinin test APK app-debug-test-unaligned.apk ve NotePad örnek uygulamasına zaten dahil edildiğini unutmayın. Bir Robo testi çalıştırdığınızda ekran görüntüleri de otomatik olarak alınır.

1. Ekran görüntüsü kitaplığını projenize ekleyin

  1. Android Studio'da Proje görünümünü açın ve proje adınıza sağ tıklayın. Ardından Yeni > Dizin'i tıklayın.

  2. Yeni Dizin iletişim kutusuna aars yazın . Bu, test projenizin kökünde bir aars dizini oluşturur ( uygulama klasörüne bir eş dizin olarak).

  3. Cloudtestingscreenshotter_lib.aar dosyasını kopyalayın ve aars klasörüne yapıştırın.

  4. Uygulamanızın kök düzeyinde (proje düzeyinde) build.gradle dosyasında, her repositories bloğundaki aars klasörüne bir referans ekleyin:

    repositories {
        jcenter()
        flatDir {
            dirs '../aars'
        }
    }
    ...
  5. Senin modülün üst düzey dizinde, açın (NotePad örnek uygulama için, bu uygulama dizinidir) build.gradle dosyası ve üst düzey için cloudtestingscreenshotter_lib.aar için bir bağımlılık ekleyin dependencies bloğun:

    dependencies {
        // Cloud testing
        androidTestCompile (name:'cloudtestingscreenshotter_lib', ext:'aar')
        // Other dependencies go here
        }
    
  6. AndroidManifest.xml dosyanızda, <manifest> etiketine aşağıdaki satırları ekleyerek uygulamanız için sistem izinlerini belirtin. Android 10 (API seviyesi 29) veya daha yüksek bir WRITE_EXTERNAL_STORAGE test ediyorsanız, WRITE_EXTERNAL_STORAGE iznini atlayın (uygulamanızın cihaza ekran görüntülerini okuyup yazması için bu izne gerek yoktur).

    <manifest ... >
       <!-- WRITE_EXTERNAL_STORAGE is not needed on Android 10 (API level 29) or higher. -->
       <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
       <uses-permission android:name="android.permission.INTERNET"/>
       ...
    </manifest>
    

2. Testinizden bir ekran görüntüsü alın

Testinizde ekran görüntüsü almak istediğiniz herhangi bir noktada cloudtestingscreenshotter_lib kitaplığından ScreenShotter.takeScreenshot yöntemini çağırın; burada ilk bağımsız değişken, ekran görüntüsünü tanımlamak için kullandığınız bir etikettir (aşağıdaki örnekte main_screen_2 kullanılmıştır):

Java

ScreenShotter.takeScreenshot("main_screen_2", this /* activity */);

Kotlin + KTX

ScreenShotter.takeScreenshot("main_screen_2", this /* activity */)

3. Ekran görüntülerinizi görüntüleyin

Testiniz tamamlandıktan sonra, test sonuçları ağacından bir öğe seçerek ve ardından Ekran Görüntülerini Görüntüle'ye tıklayarak test sırasında alınan ekran görüntülerini karşılaştırabilirsiniz.Ekran Görüntülerini Görüntüle seçeneği.

Screenshot comparison screen

Farklı konfigürasyonlardan ekran görüntülerini aşağıdaki gibi seçebilir ve karşılaştırabilirsiniz:

Görev Aksiyon
Test yürütmeleri arasında geçiş yapın. Sol üst köşedeki açılır menüyü kullanın.

test senaryosu menüsü
Bir test yürütmesi içinde ekran görüntüleri arasında geçiş yapın. Sağ üst köşedeki okları kullanın.

ekran görüntüsü değiştirici
Mevcut görünüme ek ekran görüntüsü karşılaştırma panelleri ekleyin. Karşılaştır'a tıklayın.

Karşılaştırmak
Farklı bir test boyutu seçin (cihaz türü, yönelim, yerel ayar vb.). Ekran görüntüsünün altındaki listeden yeni bir boyut üyesi seçin.