Pertanyaan Umum CTS

Program Kompatibilitas Android adalah pendorong utama untuk mempertahankan masukan positif bagi ekosistem Android. CTS adalah alat utama untuk memastikan kualitas kompatibilitas dalam skala. Tim Android terus meningkatkan alat CTS dan cakupan pengujian. Penambahan kasus uji secara rutin memberikan peningkatan signifikan pada kualitas perangkat yang kompatibel.

Pertanyaan umum

Bagian ini memberikan FAQ CTS umum.

Hal-hal apa saja yang diuji oleh CTS?

CTS menguji apakah semua API tipe kuat Android yang didukung ada dan berfungsi dengan benar. CTS juga menguji perilaku sistem non-API lainnya seperti siklus hidup dan kinerja aplikasi.

Bagaimana lisensi CTS?

CTS dilisensikan di bawah Lisensi Perangkat Lunak Apache 2.0 yang sama dengan yang digunakan sebagian besar Android.

Apakah codec diverifikasi oleh CTS?

Ya. Semua codec wajib diverifikasi oleh CTS.

Pertanyaan khusus tes

Bagian ini menyediakan FAQ yang membantu menjalankan pengujian CTS dengan lebih efisien.

Apa perbedaan antara CTS Sharding dan TF Sharding?

CTS Sharding dan TF Sharding adalah rencana pengujian yang sangat berbeda yang didukung oleh basis kode infrastruktur pengujian yang berbeda. Meskipun perintah run sama pada versi yang berbeda, hasil sharding berperilaku berbeda. CTS Sharding secara statis menetapkan kasus uji ke Perangkat yang Diuji (DUT) sebagai berikut:

TF Sharding secara dinamis menetapkan kasus uji ke DUT yang tersedia sebagai berikut:

Apa yang diharapkan dari perangkat yang mendukung banyak ABI?

Perangkat harus lulus semua tes CTS dan CTS Verifier untuk setiap mode ABI yang diklaim didukungnya. Oleh karena itu, aplikasi untuk ABI tertentu perlu dijalankan. Pedoman untuk beberapa ABI adalah sebagai berikut:

  • Untuk CTS dan CTS Verifier, terdapat rilis ARM dan x86 untuk setiap arsitektur. Masing-masing dapat mendukung mode 32 atau 64-bit.
  • Untuk pengujian CTS, jika perangkat mendukung ARM dan x86, perangkat tersebut harus menjalankan dan lulus pengujian ARM dan x86 CTS.

Lihat CDD 3.3.1. Antarmuka Biner Aplikasi untuk persyaratan CDD pada ABI.

Apakah cukup menjalankan pengujian hanya pada ABI utama (misalnya, 64 bit) untuk mengurangi waktu eksekusi pengujian?

Tidak. Aplikasi Android berjalan pada runtime 32-bit atau 64-bitnya sendiri. Kode mesin sebenarnya, jalur kode, dan status berbeda antara 32 dan 64. Jika Anda melewatkan satu mode, Anda hanya mencakup 50% ABI perangkat.

Mengapa banyak kasus uji yang dilaporkan Tidak Dieksekusi?

Anda harus memeriksa nomor Modul Selesai , bukan nomor Tidak Dieksekusi .

Pada versi sebelumnya, modul CTS dilaporkan sebagai Modul Selesai terlalu agresif sebelum diselesaikan. Oleh karena itu, nomor Modul Selesai dilaporkan tanpa semua kasus pengujian selesai meskipun beberapa perangkat mengalami masalah. Rangkaian pengujian baru lebih konservatif dan melaporkan jumlah pengujian Tidak Dieksekusi yang lebih tinggi ketika terjadi masalah.

Modul yang dijalankan hingga selesai melaporkan Modul Belum Selesai dalam pemanggilan terbaru (done="false") dalam laporan selama hal berikut:

  • Uji coba modul terganggu oleh masalah koneksi perangkat.
  • Tidak semua uji coba yang diharapkan untuk modul dilakukan.
  • Mencoba lagi (menggunakan opsi -r/--retry ) dengan opsi pemfilteran tambahan, seperti:

    • --termasuk-filter
    • --kecualikan-filter
    • -t/--test (Opsi belum didukung saat mencoba lagi)
    • --coba ulang tipe gagal
    • --subrencana

Untuk mendapatkan status Modul Selesai (selesai = "benar") untuk modul ini, coba lagi perintah berikut untuk pemanggilan terbaru:

run retry --retry <session_id> for Android 9 and later versions
run cts --retry <session_id> for Android 8.1 and previous versions

Modul yang dijalankan tanpa masalah apa pun yang disebutkan sebelumnya (bahkan dengan 0 pengujian tersisa) ditandai Modul Selesai di laporan baru.

Pengecualian

  • CtsNNAPITestCases memiliki masalah umum karena batasan argumen linux/OS. Modul dapat dijalankan kembali secara terpisah melalui run cts -m CtsNNAPITestCases secara langsung.

Bagaimana cara menghindari kegagalan persiapan ujian di balik firewall perusahaan?

Semua rangkaian pengujian otomatis mencoba mengunduh file media CTS atau file logika bisnis selama runtime. Di banyak lingkungan perusahaan, firewall dan proxy merupakan hal yang umum, sehingga persiapan pengujian gagal. Jalankan baris berikut atau tambahkan ke .profile (di Ubuntu).

export JAVA_TOOL_OPTIONS='-Djava.net.useSystemProxies=true'

Apakah saya memerlukan kartu SIM untuk CTS untuk Elemen Aman?

Apakah kartu SIM diperlukan untuk pengujian tergantung pada pemahaman apakah fitur tersebut didukung di perangkat pengujian.

  • Jika perangkat Anda TIDAK perlu mendukung aplikasi Android yang mengakses elemen aman—baik di UICC (misalnya, kartu SIM) yang didistribusikan oleh operator jaringan seluler (operator) atau tertanam di perangkat—Anda dapat mengonfigurasi manifes HIDL agar tidak menyertakan elemen HAL android.hardware.secure_element . Dalam hal ini, API android.se.omapi.SEService.getReaders() melaporkan daftar kosong dan pengujian CTS secara otomatis lolos dan melaporkan kelulusan untuk CTS.
  • Jika perangkat Anda TIDAK perlu mendukung aplikasi Android yang mengakses elemen aman—baik di UICC (misalnya, kartu SIM) yang didistribusikan oleh operator jaringan seluler (operator) atau tertanam di perangkat—Anda perlu menerapkan elemen aman dengan benar dan mengujinya di dalam rumah. Pengujian CTS untuk Elemen Aman menguraikan cara bersiap menjalankan pengujian CTS yang memastikan paket API android.se.omapi yang ditambahkan di Android 9 berfungsi. Kami juga merekomendasikan untuk melakukan pengujian tambahan sendiri karena cakupan pengujian CTS minimal.

Di mana saya bisa mendapatkan kartu SIM untuk CTS untuk Elemen Aman?

Anda dapat menghubungi vendor SIM pilihan Anda.

Mengapa SIM Oranye ada di layar kunci selama eksekusi CTS dengan token sharding?

Kasus pengujian tidak dimulai karena pengujian kartu SIM terkunci. Nonaktifkan Kunci kartu SIM di **pengaturan kunci kartu SIM sebelum menjalankan CTS dengan token sharding.