CTS yang Didukung Developer

Halaman ini menguraikan panduan penggunaan untuk CTS yang Didukung Developer (CTS-D).

Cakupan pengujian

CTS-D, seperti CTS &CTS Verifier, hanya dapat menerapkan hal berikut:

  • Semua API publik yang dijelaskan dalam SDK developer (developer.android.com) untuk level API tertentu.
  • Semua persyaratan MUST yang disertakan dalam Compatibility Definition Document (CDD) Android untuk level API tertentu.

Persyaratan non-MUST, seperti STRONGLY RECOMMENDED, SHOULD, MAY, bersifat opsional dan tidak dapat diuji menggunakan CTS.

Karena semua API dan persyaratan CDD terikat ke level API tertentu, semua pengujian CTS (CTS, CTS-D, dan CTS Verifier) terikat ke level API yang sama dengan API atau persyaratan terkait. Jika API tertentu tidak digunakan lagi atau diubah, pengujian yang sesuai harus tidak digunakan lagi atau diperbarui.

Aturan pembuatan pengujian CTS

  • Pengujian harus menghasilkan hasil objektif yang sama secara konsisten.
  • Pengujian harus menentukan apakah perangkat lulus atau gagal dengan menguji perangkat tersebut satu kali langsung.
  • Pembuat pengujian harus menghapus semua faktor yang mungkin dapat memengaruhi hasil pengujian.
  • Jika perangkat memerlukan kondisi/lingkungan/penyiapan hardware tertentu, penyiapan tersebut harus ditentukan dengan jelas dalam pesan commit. Untuk contoh petunjuk penyiapan, lihat Menyiapkan CTS.
  • Pengujian tidak boleh berjalan lebih dari 6 jam dalam satu waktu. Jika perlu berjalan lebih lama, sertakan alasan dalam proposal pengujian Anda agar kami dapat meninjaunya.

Berikut adalah contoh kumpulan kondisi pengujian untuk menguji pembatasan aplikasi:

  • Wi-Fi stabil (untuk pengujian yang mengandalkan Wi-Fi).
  • Perangkat tetap diam selama pengujian (atau tidak, bergantung pada pengujian).
  • Perangkat dicabut dari sumber listrik mana pun dengan tingkat baterai X persen.
  • Tidak ada aplikasi, layanan latar depan, atau layanan latar belakang yang berjalan, kecuali CTS.
  • Layar nonaktif saat menjalankan CTS.
  • Perangkat BUKAN isLowRamDevice.
  • Penghemat baterai / pembatasan aplikasi belum diubah dari status “langsung”.

Kelayakan pengujian

Kami menerima pengujian baru yang menerapkan perilaku yang tidak diuji oleh pengujian CTS, CTS Verifier, atau CTS-D yang ada. Setiap pengujian yang memeriksa perilaku di luar cakupan pengujian kami akan ditolak.

Proses pengiriman CTS

  1. Menulis proposal pengujian: Developer aplikasi mengirimkan proposal pengujian menggunakan Google Issue Tracker, yang menjelaskan masalah yang telah diidentifikasi dan mengusulkan pengujian untuk memeriksanya. Proposal harus menyertakan ID persyaratan CDD terkait. Tim Android meninjau proposal tersebut.
  2. Mengembangkan pengujian CTS: Setelah proposal disetujui, pengirimnya akan membuat pengujian CTS di AOSP pada cabang rilis terbaru Android (android17-release). Tim Android meninjau kode tersebut dan jika diterima, akan memilih perubahan dan menggabungkannya ke cabang pengembangan internal. Untuk mengetahui detailnya, lihat Di mana saya harus mengusulkan perubahan pada AOSP?.

Pedoman penulisan pengujian CTS-D

  • Ikuti Panduan Gaya Kode Java.
  • Ikuti semua langkah yang dijelaskan dalam Pengembangan CTS.
  • Tambahkan pengujian Anda ke rencana pengujian yang sesuai:
    • Gunakan include-filters untuk menambahkan pengujian baru Anda ke rencana pengujian CTS-D: platform/cts/tools/cts-tradefed/res/config/cts-developer.xml.
    • Gunakan exclude-filters untuk mengecualikan pengujian baru Anda dari rencana pengujian CTS utama: platform/cts/tools/cts-tradefed/res/config/cts-developer-exclude.xml.
  • Tangani semua peringatan dan saran errorprone di build_error.log.
  • Rebase perubahan Anda ke head. Hal ini mencakup rencana pengujian cts-developer.xml dan cts-developer-exclude.xml.
  • Bekerja samalah dengan kontak teknik Google Anda untuk menentukan apakah kasus pengujian Anda dapat disertakan dalam modul CTS yang ada. Jika tidak dapat disertakan, mereka akan membantu Anda membuat modul baru.
  • Untuk setiap modul pengujian baru yang dibuat, buat file OWNERS di direktori modul pengujian baru.
    • File OWNERS Anda harus berisi informasi berikut, yang diperoleh dari pemilik pengujian Google yang bekerja sama dengan Anda:
    • # Bug component: xxx
    • ldap pemilik pengujian Google
  • Di AndroidTest.xml, tentukan parameter berikut.
      Lihat contoh file (1,2) untuk contoh:
    • Instant_app atau not_instant_app
    • secondary_user atau not_secondary_user
    • all_foldable_states atau no_foldable_states
  • Untuk menentukan minSDK yang benar, lihat dokumentasi <uses-sdk>.
  • Saat melakukan check-in metode, class, atau modul pengujian baru, tambahkan ke rencana pengujian CTS-D dan kecualikan dari rencana pengujian CTS utama dengan cara yang sama seperti untuk pengujian baru.

Menjalankan pengujian CTS-D

Jalankan rencana pengujian CTS-D dari command line menggunakan run cts --plan cts-developer.

Untuk menjalankan kasus pengujian tertentu, gunakan run cts --include-filter "test_module_name test_name".

Untuk mengetahui informasi tentang cara menjalankan CTS lengkap, lihat Menjalankan pengujian CTS.

Penerimaan dan rilis

Setelah permintaan pengujian dikirimkan, tim internal akan meninjaunya untuk memastikan pengujian tersebut menguji persyaratan CDD atau perilaku API yang didokumentasikan. Jika pengujian ditentukan untuk memeriksa persyaratan atau perilaku yang valid, tim akan meneruskan kasus pengujian ini ke engineer Google untuk ditinjau lebih lanjut. Engineer Google akan menghubungi Anda untuk memberikan masukan tentang cara meningkatkan pengujian sebelum dapat diterima ke dalam CTS.

Lihat Jadwal rilis dan informasi cabang untuk mengetahui detail tentang jadwal rilis CTS.