Araç bağımsız değişkenleri ekleme

Aşağıdaki araçları kullanarak kitaplığın davranışını yapılandırın bağımsız değişkenlerdir. Bunları Gradle yapılandırmanıza ekleyebilir veya uygulayabilirsiniz. doğrudan komut satırından çalıştırırken: Bunları ayarlamak için komut satırı test çalıştırmaları için bağımsız değişkenler kullanıyorsanız, bunları testInstrumentationRunnerArguments:

android {
    defaultConfig {
        // ...
        testInstrumentationRunnerArguments["androidx.benchmark.dryRunMode.enable"] = "true"
    }
}

Ayrıca, karşılaştırmaları çalıştırırken araç bağımsız değişkenlerini de Android Studio'ya gidin. Bağımsız değişkenleri değiştirmek için aşağıdakileri yapın:

  1. Çalıştırma yapılandırmasını düzenlemek için Düzenle'yi ve ardından yapılandırma.
    çalıştırma yapılandırmasını düzenle
    Şekil 1. Çalıştırma yapılandırmasını düzenleyin.
  2. Araç bağımsız değişkenlerini düzenlemek için Diğer: Araç bağımsız değişkenleri.
    araç bağımsız değişkenlerini düzenle
    Şekil 2. Enstrümantasyonu düzenle bağımsız değişkendir.
  3. Şu simgeyi tıklayarak gerekli araç bağımsız değişkenini ekleyin: Araç<br> altına ekleyin Ek parametreler.
    gerekli araç bağımsız değişkenini ekle
    Şekil 3. Gerekli araçları ekleyin bağımsız değişkendir.

Doğrudan komut satırından arama yapıyorsanız -P android.testInstrumentationRunnerArguments.[name of the argument] komutunu kullanın.

./gradlew :benchmark:connectedAndroidTest -P android.testInstrumentationRunnerArguments.androidx.benchmark.enabledRules=BaselineProfile

androidx.benchmark.compilation.enabled

Karşılaştırmanın her yinelemesi arasındaki derlemeyi devre dışı bırakmanıza olanak tanır. Ölçüt her bir uygulama için hedef uygulama yeniden yüklenir ve CompilationMode dikkate alınarak measureRepeated. Bunu devre dışı bıraktığınızda her iki reklamı da atlayabilirsiniz. yeniden yükleme ve derleme gibi işlemler için hedefi tam olarak derlemek test paketi çalıştırmadan önce bir kez test edin ve tüm karşılaştırmaları derlenmiş hedeftir.

  • Bağımsız değişken türü: boole
  • Varsayılan ayar: true

androidx.benchmark.dryRunMode.enable

Düzgün çalışıp çalışmadıklarını doğrulamak için tek bir döngüde karşılaştırmalar çalıştırmanızı sağlar. Doğrulamanın bir parçası olarak düzenli testlerle birlikte kullanabilirsiniz.

  • Bağımsız değişken türü: boole
  • Varsayılan ayar: false

androidx.benchmark.enabledRules

Yalnızca tek bir test türünde yapılan filtrelemeye izin verir: Temel Profil oluşturma veya Macrobenchmark testi. Virgülle ayrılmış listeler de desteklenir.

  • Bağımsız değişken türü: dize
  • Kullanılabilir seçenekler:
    • Macrobenchmark
    • BaselineProfile
  • Varsayılan ayar: Belirtilmedi

androidx.benchmark.junit4.SideEffectRunListener

Alakasız arka plan çalışması gerçekleşirse tutarsız karşılaştırma sonuçları karşılaştırma yapılır.

Karşılaştırma sırasında arka planda çalışmayı devre dışı bırakmak için listener araç bağımsız değişken türünü androidx.benchmark.junit4.SideEffectRunListener.

  • Bağımsız değişken türü: dize
  • Kullanılabilir seçenekler:
    • androidx.benchmark.junit4.SideEffectRunListener
  • Varsayılan ayar: belirtilmedi

androidx.benchmark.fullTracing.enable

Jetpack Compose gibi androidx.tracing.perfetto izleme noktalarını etkinleştirir bileşim izleme.

Kompozisyon izlemeyi yakalamak için projenizi oluşturmanız gerekir bazı işaretler bulabilirsiniz. Daha fazla bilgi için Jetpack ile iz bulma başlıklı makaleyi inceleyin Macrobenchmark değerlerinden biri.

  • Bağımsız değişken türü: boole
  • Varsayılan ayar: false

androidx.benchmark.profilleme.modu

Karşılaştırmaları çalıştırırken izleme dosyalarının yakalanmasını sağlar. Mevcut seçenekler Microbenchmark kitaplığıyla aynıdır. Daha fazla bilgi için açıklamaları Mikro Karşılaştırma profili oluşturun.

  • Bağımsız değişken türü: dize
  • Kullanılabilir seçenekler:
    • MethodTracing
    • StackSampling
    • None
  • Varsayılan ayar: None

androidx.benchmark.startupProfiles.enable

Karşılaştırma sırasında başlangıç profili oluşturulmasını devre dışı bırakmanıza olanak tanır.

  • Bağımsız değişken türü: boole
  • Varsayılan ayar: true

androidx.benchmark.suppressErrors

Uyarıya dönüştürmek için virgülle ayrılmış hata listesini kabul eder.

  • Bağımsız değişken türü: dizelerin listesi
  • Kullanılabilir seçenekler:

    • DEBUGGABLE

      DEBUGGABLE hatası, hedef paketin Manifest'inde debuggable=true. Bu, çalışma zamanını büyük ölçüde kısaltır hata ayıklama özelliklerini destekleyecek şekilde performans. Bu hatadan kaçınmak için debuggable=false ile karşılaştırma. Hata ayıklaması yapılabilir bağımsız değişken, performans artışını, karşılaştırmalı iyileştirmelerle anlamlı sonuçlar elde veya regresyon sürümü performansını etkileyebilir.

    • LOW-BATTERY

      Pil seviyesi azaldığında cihazlar genellikle pil tasarrufu yapmak için performansı düşürür (ör. büyük çekirdekleri devre dışı bırakarak). Bu durum Cihazların takılı olduğunu unutmayın. Bu hatayı yalnızca bilinçli olarak düşük performansla uygulamanın profilini çıkarma

    • EMULATOR

      EMULATOR hatası, karşılaştırmanın emülatörü kullanın. Emülatör Karşılaştırma iyileştirmeleri gerçek bir kullanıcının deneyimine gerçek cihaz performansını düşürebilir. fiziksel bir cihazı karşılaştırabilirsiniz. Bu hatayı çok dikkatli bir şekilde bastırın.

    • NOT-PROFILEABLE

      $packageName hedef paketi olmadan çalışıyor <profileable shell=true>. Profillenebilirlik, Android 10 ve 11'de gereklidir Böylece, Macrobenchmark'ın hedeften ayrıntılı izleme bilgilerini yakalamasını sağlarsınız. (ör. uygulamada tanımlanan sistem izleme bölümleri veya kitaplıklar. Bu hatayı çok dikkatli bir şekilde bastırın.

    • METHOD-TRACING-ENABLED

      Karşılaştırılmakta olan uygulama için Macrobenchmark çalıştırmasında yöntem izleme vardır. etkin. Bu durum sanal makinenin normalden daha yavaş çalışmasına neden olur. Bu nedenle yalnızca göreceli olarak izleme dosyalarındaki metrikleri gösterir; örneğin, ve ikinci koşunun hızını karşılaştırabilirsiniz. Bu engelleniyor Karşılaştırmaları karşılaştırırsanız farklı yöntem izleme seçenekleriyle tanıtabilirsiniz.

  • Varsayılan ayar: Boş liste

ekTestÇıkışDir

JSON karşılaştırma raporlarının ve profil oluşturma sonuçlarının kaydedileceği yeri yapılandırır olanak tanır.

  • Bağımsız değişken türü: yol dizesi
  • Varsayılan ayar: APK'nın harici dizini
ziyaret edin. ziyaret edin.