CTS'yi optimize etme

Android Uyumluluk Test Paketi (CTS), milyonlarca ayrı test sağlar. CTS'yi yazılım geliştirme aşamasında sık sık çalıştırmak gerekli olsa da bu testleri çalıştırmak için gereken süreyi kısaltabilirsiniz.

Bu sayfada, test yürütme süresini azaltmak için kullanabileceğiniz yöntemler ve süreçteki donanım kaynaklarını nasıl optimize edebileceğiniz açıklanmaktadır.

Cihazları bölme

Döngü süresini azaltmak için CTS'yi birden fazla cihazda çalıştırmayı (bölümlere ayırma) düşünebilirsiniz. Bölme işleminin nasıl kullanılabileceğini görmek için CTS testlerini çalıştırma başlıklı makaleyi inceleyin.

Android test istasyonu

Standart Android test paketlerini çalıştırmak için kullanıcı arayüzü kullanmak istiyorsanız Android Test İstasyonu'nu (ATS) kullanın. Bu araç, Trade Federation (TF) için bir web arayüzü görevi görür. CTS'yi bir dizi test cihazında minimum kurulumla çalıştırmanıza ve testleri sürekli olarak çalıştırmak için bir program oluşturmanıza olanak tanır.

Android test istasyonu, birden fazla ATS çalışan ana makinesinde cihazları ve testleri yönetmek için tek bir ATS denetleyici ana makinesi kullanılabilen çoklu ana makine modunu destekler.

Emülatör sürekli çalıştırma

Geliştirme aşamasında CTS'yi sürekli olarak çalıştırmak için donanımın yerine Android Virtual Devices (AVD) kullanılabilir. Test hatalarının gerilemelerini erken tespit edebilirsiniz. Böylece, temel nedenleri tespit etmek ve analiz etmek için gereken zamanın büyük bir kısmını kurtarabilirsiniz. Bölme işlemi için emülatörden birden fazla örnek kullanılabilir ve Android test istasyonuyla sürekli olarak çalışacak şekilde planlanabilir.

drawElements Quality Program (dEQP)

drawElements Kalite Programı (dEQP), Android CTS'ye dahildir. CtsDepqTestCases adlı bu program, Android grafiklerinin test kapsamına odaklanır. Bu modül, Android CTS'deki tüm test durumlarının neredeyse% 80'ini oluşturur ve toplam yürütme süresinin% 6'sını temsil eder.

Android grafik sürücüleri Android donanım yazılımının (BSP) bir parçası olduğundan ve geliştirme sürecinde çok fazla değişiklik göstermediğinden bu modülü stratejik olarak çalıştırabilirsiniz. Örneğin, yazılım geliştirme sırasında CTS'yi iki haftada bir (veya daha kısa aralıklarla) çalıştırırsanız donanım yazılımı güncelleme programına bağlı olarak bu modülü birkaç döngü için hariç tutabilirsiniz.

Bir seçenek, CtsDeqpTestCases'ü bir cihaz grubunda ayrı ayrı çalıştırmak ve ardından CTS raporlarını göndermektir. Örneğin, iki farklı ana makinede.

1. Ana makine:

cts-tf > run cts --max-log-size 100 --shard-count 6 -o -m CtsDeqpTestCases

2. ana makine:

cts-tf > run cts --max-log-size 100 --shard-count 6 -o --exclude-filter CtsDeqpTestCases

Medya test durumları

Medya test durumları; ses, video ve multimedya sürücüleri gibi multimedya hizmetlerini doğrular. Bu multimedya test modülleri, CTS yürütme süresine en fazla katkıda bulunan öğelerdir. Gecikmeler aşağıdaki durumlarda yaşanabilir:

  • Testler sırasında medya dosyalarını indirme veya tekrar tekrar oynatma.
  • Başarısız test durumlarını yeniden deneme.

Android CTS aşağıdaki test modüllerini içerir:

  • CtsMediaStressTestCases
  • CtsMediaPlayerTestCases
  • CtsMediaAudioTestCases
  • CtsVideoTestCases
  • CtsMediaDecoderTestCases
  • CtsMediaCodecTestCases
  • CtsMediaV2TestCases

Bazı medya testlerini yerel olarak veya yerel bir sunucuda çalıştırabilirsiniz. Ayrıntılı bilgi için CTS medya testlerini yerel olarak çalıştırma başlıklı makaleyi inceleyin.

Multimedya çerçevesi ve sürücüleri (kod çözücüler ve kodlayıcılar), Android donanım yazılımının (BSP) bir parçasıdır. Bu modülü stratejik olarak çalıştırabilir ve donanım yazılımı güncelleme programına göre bu modülleri birkaç döngü için hariç tutabilirsiniz.