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 di SDK developer (developer.android.com) untuk level API tertentu.
  • Semua persyaratan HARUS yang disertakan dalam Compatibility Definition Document (CDD) Android untuk level API tertentu.

Persyaratan non-HARUS, seperti SANGAT DIUJIKAN, HARUS, DAPAT, bersifat opsional dan tidak dapat diuji menggunakan CTS.

Karena semua API dan persyaratan CDD terikat dengan API level tertentu, semua pengujian CTS (CTS, CTS-D, dan CTS Verifier) terikat dengan API level 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 memberikan hasil objektif yang sama secara konsisten.
  • Pengujian harus menentukan apakah perangkat lulus atau gagal dengan menguji perangkat tersebut satu kali secara langsung.
  • Kreator pengujian harus menghapus semua faktor yang 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 pengujian perlu berjalan lebih lama, sertakan alasannya 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 apa pun dengan persentase baterai X.
  • Tidak ada aplikasi, layanan latar depan, atau layanan latar belakang yang berjalan, kecuali CTS.
  • Layar nonaktif saat menjalankan CTS.
  • Perangkat BUKAN isLowRamDevice.
  • Batasan penghemat baterai / aplikasi belum diubah dari status “siap pakai”.

Menguji kelayakan

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

Proses pengiriman CTS

  1. Menulis proposal pengujian: Developer aplikasi mengirimkan proposal pengujian menggunakan Issue Tracker Google, yang menjelaskan masalah yang telah diidentifikasi dan mengusulkan pengujian untuk memeriksanya. Proposal harus menyertakan ID persyaratan CDD terkait. Tim Android akan meninjau proposal tersebut.
  2. Mengembangkan pengujian CTS: Setelah proposal disetujui, pengirimnya akan membuat pengujian CTS di AOSP pada cabang utama (AOSP/main). Tim Android akan meninjau kode tersebut.
  3. Publikasikan pengujian: Kirim CL Anda di AOSP/main lalu pilih duplikat ke cabang androidx-tests-dev terbaru. Pengujian ini kini tersedia secara publik.

Pedoman penulisan pengujian CTS-D

  • Ikuti Panduan Gaya Kode Java.
  • Ikuti semua langkah yang dijelaskan di Pengembangan CTS.
  • Tambahkan pengujian Anda ke rencana pengujian yang sesuai:
    • Gunakan include-filters untuk menambahkan pengujian baru ke rencana pengujian CTS-D: platform/cts/tools/cts-tradefed/res/config/cts-developer.xml.
    • Gunakan exclude-filters untuk mengecualikan pengujian baru 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.
  • Lakukan rebase pada perubahan Anda ke head. Hal ini mencakup rencana pengujian cts-developer.xml dan cts-developer-exclude.xml.
  • Bekerja samalah dengan kontak engineer Google Anda untuk menentukan apakah kasus pengujian Anda dapat disertakan dalam modul CTS yang ada. Jika tidak bisa, mereka akan membantu Anda membuat modul baru.
  • Untuk setiap modul pengujian baru yang dibuat, buat file PEMILIK di direktori modul pengujian baru.
    • File OWNERS 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 file contoh (1, 2) untuk mengetahui contohnya:
    • 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 memeriksa 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 informasi tentang cara menjalankan CTS lengkap, lihat Menjalankan pengujian CTS.

Penerimaan dan rilis

Setelah permintaan pengujian dikirimkan, tim internal akan meninjaunya untuk memastikan permintaan tersebut menguji persyaratan CDD atau perilaku API yang terdokumentasi. 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 di CTS.

Lihat Informasi cabang dan jadwal rilis untuk mengetahui detail tentang jadwal rilis CTS.