Mengoptimalkan CTS

Android Compatibility Test Suite (CTS) menyediakan jutaan pengujian individual. Meskipun perlu menjalankan CTS secara rutin selama fase pengembangan software, Anda dapat mempersingkat waktu yang diperlukan untuk menjalankan pengujian ini.

Halaman ini menjelaskan metode yang dapat Anda gunakan untuk mengurangi waktu eksekusi pengujian dan cara mengoptimalkan sumber daya hardware ke dalam proses.

Perangkat bersama

Untuk mengurangi waktu siklus, pertimbangkan untuk menjalankan CTS di beberapa perangkat (sharding). Untuk melihat cara penggunaan sharding, tinjau Menjalankan pengujian CTS.

Stasiun pengujian Android

Gunakan Android Test Station (ATS) untuk menggunakan antarmuka pengguna dalam menjalankan paket pengujian Android standar. Alat ini berfungsi sebagai antarmuka web untuk Trade Federation (TF), sehingga Anda dapat menjalankan CTS dengan penyiapan minimal pada serangkaian perangkat pengujian serta membuat jadwal untuk menjalankan pengujian secara berkelanjutan.

Stasiun pengujian Android mendukung Mode multi-host, yang memungkinkan satu host pengontrol ATS digunakan untuk mengelola perangkat dan pengujian di beberapa host pekerja ATS.

Jalankan emulator secara berkelanjutan

Untuk menjalankan CTS secara terus-menerus selama fase pengembangan, Perangkat Virtual Android (AVD) dapat digunakan sebagai pengganti hardware. Regresi kegagalan pengujian dapat diidentifikasi lebih awal, sehingga menghemat banyak waktu yang diperlukan untuk menyeleksi dan menganalisis akar masalah. Beberapa instance emulator dapat digunakan untuk sharding dan dapat dijadwalkan untuk berjalan terus-menerus dengan stasiun pengujian Android.

Program Kualitas drawElements (dEQP)

Program Kualitas drawElements (dEQP) disertakan dalam CTS Android. Program ini disebut CtsDepqTestCases dan berfokus pada cakupan pengujian grafis Android. Modul ini mencakup hampir 80% dari semua kasus pengujian di Android CTS dan mewakili 6% dari total waktu eksekusi.

Karena driver grafis Android adalah bagian dari firmware Android (BSP) dan tidak banyak berubah selama pengembangan, Anda dapat menjalankan modul ini secara strategis. Misalnya, jika Anda menjalankan CTS setiap dua minggu (atau kurang) selama pengembangan software, berdasarkan jadwal update firmware, Anda dapat mengecualikan modul ini untuk beberapa siklus.

Salah satu opsinya adalah menjalankan CtsDeqpTestCases secara terpisah di sekumpulan perangkat, lalu mengirimkan laporan CTS. Misalnya, di dua host yang berbeda.

Host 1:

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

Host 2:

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

Kasus pengujian media

Kasus pengujian media memverifikasi layanan multimedia seperti audio, video, dan driver multimedia. Modul pengujian multimedia ini paling berkontribusi pada waktu eksekusi CTS. Keterlambatan dapat terjadi jika:

  • Mendownload file media atau memutar file media berulang kali selama pengujian.
  • Mencoba lagi kasus uji yang gagal.

CTS Android berisi modul pengujian berikut:

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

Pertimbangkan untuk menjalankan beberapa pengujian media secara lokal atau di server lokal. Untuk mengetahui detailnya, lihat Menjalankan pengujian media CTS secara lokal.

Framework multimedia dan drivernya (decoder dan encoder) adalah bagian dari firmware Android (BSP). Anda dapat menjalankan modul ini secara strategis dan mengecualikan modul ini selama beberapa siklus, berdasarkan jadwal update firmware.