CTS yang Didukung Pengembang

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

Cakupan tes

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

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

Persyaratan Non-HARUS, seperti SANGAT DIREKOMENDASIKAN, HARUS, MUNGKIN, adalah opsional dan tidak dapat diuji menggunakan CTS.

Karena semua persyaratan API dan 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 terkaitnya. Jika API tertentu tidak digunakan lagi atau diubah, pengujian terkaitnya harus dihentikan atau diperbarui.

Aturan pembuatan tes CTS

  • Sebuah tes harus menghasilkan hasil objektif yang sama secara konsisten.
  • Pengujian harus menentukan apakah perangkat lolos atau gagal dengan menguji perangkat itu satu kali di luar kotak.
  • Pembuat tes harus menghapus semua kemungkinan faktor yang dapat memengaruhi hasil tes.
  • Jika perangkat memerlukan kondisi/lingkungan/pengaturan perangkat keras tertentu, pengaturan tersebut harus didefinisikan dengan jelas dalam pesan komit. Untuk contoh petunjuk penyiapan, lihat Menyiapkan CTS .
  • Tes tidak boleh berjalan lebih dari 6 jam pada suatu waktu. Jika perlu berjalan lebih lama, harap sertakan alasannya dalam proposal pengujian Anda sehingga kami dapat meninjaunya.

Berikut ini adalah contoh kumpulan kondisi pengujian untuk menguji pembatasan aplikasi:

  • Wifi stabil (untuk tes yang mengandalkan Wifi).
  • Perangkat tetap diam selama pengujian (atau tidak, tergantung pada pengujian).
  • Perangkat dicabut dari sumber daya apa pun dengan tingkat baterai X persen.
  • Tidak ada aplikasi, layanan latar depan, atau layanan latar belakang yang berjalan, kecuali CTS.
  • Layar mati saat menjalankan CTS.
  • Perangkat TIDAK isLowRamDevice .
  • Penghemat baterai / pembatasan aplikasi belum diubah dari status "out-of-the-box".

Kelayakan tes

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

Proses Pengajuan CTS

  1. Menulis proposal pengujian: Pengembang aplikasi mengirimkan proposal pengujian menggunakan Google Issue Tracker , menjelaskan masalah yang telah diidentifikasi dan mengusulkan pengujian untuk memeriksanya. Proposal harus menyertakan ID persyaratan CDD terkait . Tim Android meninjau proposal tersebut.
  2. Kembangkan tes CTS: Setelah proposal disetujui, pengirimnya membuat tes CTS pada AOSP di cabang utama (AOSP/master). Tim Android meninjau kode tersebut.
  3. Publikasikan tes: Kirimkan CL Anda di AOSP/master , lalu pilih ceri ke cabang androidx-tests-dev terbaru. Tes sekarang tersedia untuk umum.

Pedoman penulisan tes 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 pengecualian 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 build_error.log errorprone
  • Rebase perubahan Anda ke head . Ini termasuk rencana pengujian cts-developer.xml dan cts-developer-exclude.xml .
  • Bekerja dengan kontak teknisi 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 OWNERS di direktori modul pengujian baru.
    • File OWNERS Anda harus berisi informasi berikut, yang diperoleh dari pemilik pengujian Google yang bekerja dengan Anda:
    • # Bug component: xxx
    • Pemilik tes Google ldap
  • Di AndroidTest.xml , tentukan parameter berikut. Lihat file sampel ( 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 memeriksa metode, kelas, atau modul pengujian baru, tambahkan mereka ke rencana pengujian CTS-D dan kecualikan mereka dari rencana pengujian CTS utama dengan cara yang sama seperti untuk pengujian baru.

Jalankan tes CTS-D Anda

Jalankan rencana pengujian CTS-D dari baris perintah menggunakan run cts --plan cts-developer .

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

Untuk informasi tentang menjalankan CTS lengkap, lihat Menjalankan Tes CTS .

Penerimaan dan pelepasan

Setelah permintaan pengujian dikirimkan, tim internal akan meninjaunya untuk memastikannya 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 teknisi Google untuk ditinjau lebih lanjut. Teknisi Google akan menghubungi Anda untuk memberikan masukan tentang bagaimana pengujian dapat ditingkatkan sebelum dapat diterima di CTS.

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