Mengoptimalkan CTS

Compatibility Test Suite (CTS) Android menyediakan jutaan pengujian individual. Meskipun perlu sering menjalankan CTS 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 uji dan cara mengoptimalkan resource hardware ke dalam proses.

Perangkat sharding

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

Android Test Station

Gunakan Android Test Station (ATS) untuk menggunakan antarmuka pengguna guna menjalankan rangkaian 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 menetapkan jadwal untuk terus menjalankan pengujian.

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

Emulator berjalan terus-menerus

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 melakukan triage dan menganalisis akar masalah. Beberapa instance emulator dapat digunakan untuk sharding dan dapat dijadwalkan untuk berjalan terus-menerus dengan stasiun pengujian Android.

drawElements Quality Program (dEQP)

Program Kualitas drawElements (dEQP) disertakan dalam Android CTS. Disebut CtsDepqTestCases, program ini 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 selama beberapa siklus.

Salah satu opsinya adalah menjalankan CtsDeqpTestCases secara terpisah di serangkaian 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 banyak berkontribusi pada waktu eksekusi CTS. Penundaan dapat terjadi jika:

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

Android CTS 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.