Menguji aksesibilitas aplikasi

Pengujian aksesibilitas memungkinkan Anda merasakan pengalaman menggunakan aplikasi dari perspektif pengguna dan menemukan masalah kegunaan yang mungkin terlewatkan. Pengujian aksesibilitas dapat mengungkap peluang untuk membuat aplikasi Anda lebih andal dan serbaguna bagi semua pengguna, termasuk yang menyandang disabilitas.

Untuk hasil terbaik, gunakan semua pendekatan yang dijelaskan dalam dokumen ini:

  • Pengujian manual: Lakukan interaksi dengan aplikasi Anda menggunakan layanan aksesibilitas Android.
  • Menguji dengan alat analisis: gunakan alat untuk menemukan peluang meningkatkan aksesibilitas aplikasi Anda.
  • Pengujian otomatis: aktifkan pengujian aksesibilitas di Espresso dan Robolectric.
  • Pengujian pengguna: dapatkan masukan dari orang-orang yang berinteraksi dengan aplikasi Anda.

Pengujian manual

Pengujian manual menempatkan Anda di posisi pengguna. Objek AccessibilityService Android mengubah cara konten aplikasi ditampilkan kepada pengguna dan cara pengguna berinteraksi dengan konten tersebut. Melalui interaksi dengan aplikasi menggunakan layanan aksesibilitas, Anda dapat merasakan pengalaman menggunakan aplikasi sebagaimana yang dirasakan pengguna.

TalkBack

TalkBack adalah pembaca layar bawaan Android. Saat TalkBack aktif, pengguna dapat berinteraksi dengan perangkat yang didukung Android tanpa melihat layar. Pengguna dengan gangguan penglihatan dapat mengandalkan TalkBack untuk menggunakan aplikasi Anda.

Mengaktifkan TalkBack

  1. Buka aplikasi Setelan di perangkat Anda.
  2. Buka Aksesibilitas, lalu pilih TalkBack.
  3. Di bagian atas layar TalkBack, tekan Aktif/Nonaktif untuk mengaktifkan TalkBack.
  4. Dalam dialog konfirmasi, pilih Oke untuk mengonfirmasi izin.

Menjelajahi aplikasi dengan TalkBack

Setelah TalkBack aktif, ada dua cara umum untuk menjelajahinya:

  • Navigasi linier: geser ke kanan atau ke kiri dengan cepat untuk membuka seluruh elemen layar secara berurutan. Ketuk dua kali di mana saja untuk memilih elemen layar saat ini.
  • Ketuk untuk info: tarik jari Anda di atas layar untuk mendengar konten di bawah jari Anda. Ketuk dua kali di mana saja untuk memilih elemen saat ini.

Untuk menjelajahi aplikasi Anda dengan TalkBack, selesaikan langkah-langkah berikut:

  1. Buka aplikasi.
  2. Geser setiap elemen secara berurutan.
  3. Sambil menjelajah, temukan masalah berikut:

    • Apakah respons lisan untuk setiap elemen menyampaikan konten atau tujuannya secara tepat? Pelajari cara menulis label yang bermakna. * Apakah pengumuman ringkas, atau terlalu panjang?
    • Dapatkah Anda menyelesaikan alur kerja utama dengan mudah?
    • Dapatkah Anda menjangkau setiap elemen dengan menggeser?
    • Jika notifikasi atau pesan sementara lainnya ditampilkan, apakah dibacakan?

Untuk mengetahui informasi selengkapnya dan tip, lihat Dokumentasi pengguna TalkBack .

Opsional: Setelan developer TalkBack

Setelan developer TalkBack dapat mempermudah Anda menguji aplikasi dengan TalkBack.

Untuk menampilkan atau mengubah setelan developer, selesaikan langkah-langkah berikut:

  1. Buka aplikasi Setelan di perangkat.
  2. Buka Aksesibilitas, lalu pilih TalkBack.
  3. Pilih Setelan > Setelan lanjutan > Setelan developer:

    1. Tingkat output log: pilih VERBOSE.
    2. Tampilkan output ucapan: aktifkan setelan ini untuk melihat output ucapan TalkBack di layar.

Tombol Akses

Tombol Akses memungkinkan pengguna berinteraksi dengan perangkat yang didukung Android menggunakan tombol akses, bukan layar sentuh. Ada beberapa jenis tombol akses: perangkat teknologi pendukung seperti yang dijual oleh AbleNet, Enabling Devices, RJ Cooper, atau Tecla*; tombol keyboard eksternal; atau tombol. Layanan ini dapat bermanfaat bagi pengguna yang mengalami gangguan motorik.

* Google tidak mendukung perusahaan ini atau produknya.

Mengaktifkan Tombol Akses

Salah satu cara untuk mengonfigurasi Tombol Akses adalah dengan dua tombol akses. Tombol akses pertama ditetapkan sebagai tombol "Berikutnya" dan akan memindahkan fokus ke seluruh layar, sedangkan tombol akses kedua ditetapkan sebagai tombol "Pilih" yang akan memilih elemen yang difokuskan. Untuk menggunakan metode dua tombol akes ini, Anda dapat menggunakan sepasang tombol hardware.

Untuk menyiapkan Tombol Akses menggunakan tombol turunkan volume sebagai tombol akses "Berikutnya" dan tombol naikkan volume sebagai tombol akses "Pilih", selesaikan langkah-langkah berikut:

  1. Pastikan TalkBack dinonaktifkan.
  2. Buka aplikasi Setelan di perangkat Anda.
  3. Buka Aksesibilitas dan pilih Tombol Akses, lalu pilih Setelan.
  4. Di layar Preferensi Tombol Akses, pastikan Pemindaian otomatis dinonaktifkan.
  5. Menggunakan tombol turunkan volume sebagai tombol akses "Berikutnya":

    1. Ketuk Tetapkan Tombol untuk Pemindaian > Berikutnya.
    2. Saat dialog terbuka, tekan tombol turunkan volume. Dialog akan menampilkan KEYCODE_VOLUME_DOWN.
    3. Ketuk Oke untuk mengonfirmasi dan keluar dari dialog.
  6. Menggunakan tombol naikkan volume sebagai tombol "Pilih":

    1. Ketuk Pilih.
    2. Saat dialog terbuka, tekan tombol naikkan volume. Dialog akan menampilkan KEYCODE_VOLUME_UP.
    3. Ketuk Oke untuk mengonfirmasi dan keluar dari dialog.
  7. Kembali ke Preferensi Tombol Akses dengan mengetuk tombol kembali.

  8. Opsional: Jika menggunakan TalkBack 5.1 atau yang lebih baru, Anda dapat memilih Respons lisan untuk mengaktifkan respons lisan.

  9. Kembali ke layar utama Tombol Akses dengan mengetuk tombol kembali.

  10. Di bagian atas layar Tombol Akses, tekan Aktif/Nonaktif untuk mengaktifkan Tombol Akses.

  11. Dalam dialog konfirmasi, pilih Oke untuk mengonfirmasi izin.

Menjelajahi aplikasi menggunakan Tombol Akses

Untuk menjelajahi aplikasi dengan Tombol Akses, lakukan langkah-langkah berikut:

  1. Buka aplikasi.
  2. Mulai memindai dengan menekan tombol "Berikutnya" (tombol turunkan volume).
  3. Terus tekan "Berikutnya" hingga Anda mencapai item yang ingin dipilih.
  4. Pilih item yang ditandai dengan menekan tombol "Pilih" (tombol naikkan volume).
  5. Sambil menjelajah, temukan masalah berikut:

    • Dapatkah Anda menyelesaikan alur kerja utama dengan mudah?
    • Jika Anda menggunakan teks atau input lain, dapatkah Anda menambahkan dan mengedit konten dengan mudah?
    • Apakah item hanya disorot jika Anda dapat melakukan tindakan pada item tersebut?
    • Apakah setiap item hanya ditandai sekali?
    • Apakah semua fungsi yang tersedia melalui gestur layar sentuh juga tersedia sebagai kontrol yang dapat dipilih atau tindakan kustom dalam Tombol Akses?
    • Jika Anda menggunakan TalkBack 5.1 atau yang lebih baru, dan telah mengaktifkan respons lisan, apakah respons lisan untuk setiap elemen menyampaikan konten atau tujuannya dengan tepat? Pelajari cara menulis label yang bermakna.

Opsional: Menggunakan pemilihan grup untuk melihat semua item yang dapat dipindai

Pemilihan grup adalah metode navigasi Tombol Akses yang memungkinkan Anda melihat semua item yang dapat dipindai sekaligus. Opsi ini memungkinkan Anda melakukan pemeriksaan cepat untuk melihat apakah elemen yang benar di layar sudah ditandai.

Untuk mengaktifkan pemilihan grup, selesaikan langkah-langkah berikut:

  1. Buka aplikasi Setelan di perangkat.
  2. Buka Aksesibilitas dan pilih Tombol Akses, lalu pilih Setelan.
  3. Di layar Preferensi Tombol Akses, pastikan Pemindaian otomatis dinonaktifkan.
  4. Pilih Metode pemindaian > Pemilihan grup.
  5. Ketuk Tetapkan tombol untuk pemindaian.
  6. Pastikan teks di Tombol pemilihan grup 1 dan Tombol pemilihan grup 2 menunjukkan bahwa tombol akses ditetapkan ke setiap tombol. Jika Anda mengikuti langkah-langkah dalam dokumen ini untuk mengaktifkan Tombol Akses, tombol volume sudah ditetapkan.

Untuk menjelajahi aplikasi dengan Tombol Akses menggunakan pemilihan grup, selesaikan langkah-langkah berikut:

  1. Tekan tombol "Pilih" (tombol naikkan volume) untuk menandai semua item yang dapat ditindaklanjuti di layar saat ini. Temukan masalah berikut:

    • Apakah hanya item yang dapat ditindaklanjuti yang ditandai?
    • Apakah semua item yang dapat ditindaklanjuti disorot?
    • Apakah kepadatan item yang ditandai sudah tepat?
  2. Buka layar lain untuk menghapus sorotan.

Untuk mempelajari lebih lanjut cara pengguna menjelajahi aplikasi dengan pemilihan grup, lihat Tips menggunakan Tombol Akses.

Voice Access

Voice Access memungkinkan pengguna mengontrol perangkat yang didukung Android melalui perintah lisan. Voice Access tersedia di perangkat yang menjalankan Android 5.0 (level API 21) dan yang lebih tinggi. Untuk menguji aplikasi Anda dengan Voice Access, pelajari cara memulai Voice Access.

Menguji menggunakan alat analisis

Alat analisis dapat membuka peluang untuk meningkatkan aksesibilitas yang mungkin Anda lewatkan dengan pengujian manual.

Pemeriksaan UI Compose

Aktifkan mode Pemeriksaan UI Compose di Pratinjau Compose untuk memungkinkan Android Studio otomatis mengaudit UI Compose Anda untuk masalah aksesibilitas. Android Studio akan memeriksa apakah UI Anda berfungsi di berbagai ukuran layar dengan menandai masalah seperti teks yang direntangkan di layar besar atau kontras warna rendah di panel masalah.

Klik tombol mode Pemeriksaan UI Compose untuk mengaktifkan pemeriksaan.
Mode Pemeriksaan UI Compose diaktifkan dengan detail di panel soal.

Accessibility Scanner

Aplikasi Accessibility Scanner memindai layar Anda dan memberikan saran untuk meningkatkan aksesibilitas aplikasi Anda. Accessibility Scanner menggunakan Framework Pengujian Aksesibilitas dan memberikan saran spesifik setelah melihat label konten, item yang dapat diklik, kontras, dan sebagainya.

Framework Pengujian Aksesibilitas Android terintegrasi di Android Studio untuk membantu Anda menemukan masalah aksesibilitas di tata letak. Untuk meluncurkan panel, klik tombol laporan error ! di Layout Editor.

Demo Accessibility Scanner Gambar 1. Demo Accessibility Scanner.

Untuk mempelajari lebih lanjut, lihat referensi berikut:

Laporan pra-peluncuran di Google Play

Jika mendistribusikan aplikasi di Google Play, Anda memiliki akses ke laporan pra-peluncuran untuk aplikasi Anda. Google Play membuat laporan ini segera setelah Anda mengupload aplikasi ke saluran rilis menggunakan Konsol Google Play. Laporan pra-peluncuran, yang juga tersedia di Konsol Google Play, menampilkan hasil pengujian yang dijalankan Google Play atas aplikasi Anda.

Secara khusus, Google Play menjalankan pengujian aksesibilitas menggunakan Framework Pengujian Aksesibilitas . Hasil pengujian ini muncul dalam tabel di tab Aksesibilitas pada laporan pra-peluncuran aplikasi Anda.

Tabel ini akan mengatur peluang peningkatan dalam kategori berikut:

Ukuran target sentuh
Elemen interaktif dalam aplikasi Anda yang memiliki area yang dapat difokuskan, atau ukuran target sentuh, yang lebih kecil daripada yang direkomendasikan.
Kontras rendah
Situasi ketika pasangan warna yang digunakan untuk elemen teks dan latar belakang di balik elemen tersebut memiliki rasio kontras warna lebih rendah daripada yang direkomendasikan.
Pelabelan konten
Elemen UI yang tidak memiliki label yang mendeskripsikan tujuan elemen.
Implementasi
Atribut yang ditetapkan ke elemen UI dan mempersulit layanan aksesibilitas sistem dalam menginterpretasikan elemen dengan benar. Contoh mencakup penentuan deskripsi untuk label View yang dapat diedit dan penggunaan urutan traversal elemen yang tidak cocok dengan susunan logis elemen.

Berdasarkan tabel, laporan pra-peluncuran akan menampilkan snapshot aplikasi Anda. Snapshot ini menunjukkan peluang teratas untuk meningkatkan aksesibilitas aplikasi Anda dalam setiap kategori. Pilih screenshot untuk melihat detail selengkapnya, termasuk peningkatan yang disarankan dan daftar tempat yang lebih lengkap di aplikasi tempat Anda dapat menerapkan peningkatan yang sama.

Gambar 2 menunjukkan contoh tabel yang muncul di tab Aksesibilitas laporan pra-peluncuran dalam Google Play. Gambar ini juga mencakup salah satu snapshot aplikasi yang menunjukkan bahwa tombol Berikutnya memiliki ukuran target sentuh lebih kecil daripada yang direkomendasikan.

Gambar yang menunjukkan laporan Aksesibilitas Pra-peluncuran
Gambar 2. Contoh tabel ringkasan (kiri) dan screenshot (kanan) dari tab Aksesibilitas dalam laporan pra-peluncuran.

UI Automator Viewer

Alat uiautomatorviewer menyediakan GUI yang mudah digunakan untuk memindai dan menganalisis komponen UI yang sedang ditampilkan di perangkat yang didukung Android. Anda dapat menggunakan UI Automator untuk memeriksa hierarki tata letak dan menampilkan properti komponen UI yang terlihat di latar depan perangkat. Informasi ini memungkinkan Anda membuat pengujian yang lebih mendetail, misalnya dengan membuat pemilih UI yang cocok dengan properti tertentu yang dapat dilihat. Alat ini berada di direktori tools Android SDK.

Dalam pengujian aksesibilitas, alat ini berguna untuk men-debug masalah yang ditemukan melalui metode pengujian lainnya. Misalnya, jika pengujian manual mengungkapkan bahwa tampilan tidak memiliki teks lisan yang semestinya ada, atau tampilan menerima fokus padahal semestinya tidak, Anda dapat menggunakan alat ini untuk membantu menemukan sumber masalah.

Untuk mempelajari UI Automator Viewer lebih lanjut, lihat Menulis pengujian otomatis dengan UI Automator.

Lint

Android Studio menampilkan peringatan lint untuk berbagai masalah aksesibilitas dan menyediakan link ke tempat yang relevan dalam kode sumber. Dalam contoh berikut ini, gambar tidak memiliki atribut contentDescription. Deskripsi konten yang hilang akan menghasilkan pesan berikut:

[Accessibility] Missing 'contentDescription' attribute on image

Gambar 3 menunjukkan contoh tampilan pesan ini di Android Studio:

Gambar yang menunjukkan Android Studio melaporkan deskripsi konten yang tidak ada di beberapa gambar.
Gambar 3. Pesan di Android Studio yang menunjukkan atribut contentDescription yang hilang.

Pengujian otomatis

Platform Android mendukung beberapa framework pengujian, seperti Espresso, yang memungkinkan Anda membuat dan menjalankan pengujian otomatis yang mengevaluasi aksesibilitas aplikasi Anda.

Espresso

Espresso adalah library pengujian Android yang didesain untuk menjadikan pengujian UI cepat dan mudah. Hal ini memungkinkan Anda berinteraksi dengan komponen UI yang sedang diuji di aplikasi Anda dan menegaskan bahwa perilaku tertentu terjadi atau kondisi tertentu terpenuhi.

Untuk melihat video ringkasan pengujian aksesibilitas dengan Espresso, tonton video berikut dari menit 31.54 sampai 34.19: Desain dan pengujian inklusif: Menjadikan aplikasi Anda lebih mudah diakses - Google I/O 2016.

Bagian ini akan menjelaskan cara menjalankan pemeriksaan aksesibilitas menggunakan Espresso.

Mengaktifkan pemeriksaan

Anda dapat mengaktifkan dan mengonfigurasi pengujian aksesibilitas menggunakan class AccessibilityChecks:

Kotlin

import androidx.test.espresso.accessibility.AccessibilityChecks

@RunWith(AndroidJUnit4::class)
@LargeTest
class MyWelcomeWorkflowIntegrationTest {
    init {
        AccessibilityChecks.enable()
    }
}

Java

import androidx.test.espresso.accessibility.AccessibilityChecks;

@RunWith(AndroidJUnit4.class)
@LargeTest
public class MyWelcomeWorkflowIntegrationTest {
    @BeforeClass
    public void enableAccessibilityChecks() {
        AccessibilityChecks.enable();
    }
}

Secara default, pemeriksaan berjalan saat Anda melakukan tindakan tampilan apa pun yang ditentukan dalam ViewActions. Setiap pemeriksaan mencakup tampilan tempat tindakan dilakukan serta semua tampilan turunannya. Anda dapat mengevaluasi seluruh hierarki tampilan layar selama setiap pemeriksaan dengan meneruskan true ke setRunChecksFromRootView(), seperti ditunjukkan dalam cuplikan kode berikut:

Kotlin

AccessibilityChecks.enable().setRunChecksFromRootView(true)

Java

AccessibilityChecks.enable().setRunChecksFromRootView(true);

Menyembunyikan subkumpulan hasil

Setelah Espresso menjalankan pemeriksaan aksesibilitas di aplikasi, Anda mungkin menemukan beberapa peluang untuk meningkatkan aksesibilitas aplikasi yang tidak dapat segera Anda tangani. Agar pengujian Espresso tidak terus-menerus gagal karena hasil ini, Anda dapat mengabaikannya untuk sementara. Framework Pengujian Aksesibilitas (ATF) menyediakan fungsionalitas ini menggunakan metode setSuppressingResultMatcher(), yang menginstruksikan Espresso untuk menahan semua hasil yang memenuhi ekspresi matcher yang diberikan.

Saat Anda melakukan perubahan pada aplikasi yang menangani satu aspek aksesibilitas, sebaiknya Espresso menampilkan hasil untuk sebanyak mungkin aspek aksesibilitas lainnya. Oleh karena itu, sebaiknya hanya sembunyikan peluang tertentu yang diketahui untuk peningkatan.

Saat Anda menyembunyikan sementara temuan pengujian aksesibilitas yang akan Anda coba nanti, penting untuk tidak menyembunyikan temuan serupa secara tidak sengaja. Oleh karena itu, gunakan matcher yang terbatas cakupannya. Untuk melakukannya, pilih matcher sehingga Espresso menyembunyikan hasil yang diberikan, hanya jika memenuhi setiap pemeriksaan aksesibilitas berikut:

  1. Pemeriksaan aksesibilitas jenis tertentu, seperti pemeriksaan ukuran target sentuh.
  2. Pemeriksaan aksesibilitas yang mengevaluasi elemen UI tertentu, seperti tombol.

ATF menentukan beberapa matcher untuk membantu Anda menentukan hasil yang akan ditampilkan dalam pengujian Espresso Anda. Contoh berikut ini akan menyembunyikan hasil pemeriksaan yang berhubungan dengan satu kontras warna elemen TextView. ID elemennya adalah countTV.

Kotlin

AccessibilityChecks.enable().apply {
        setSuppressingResultMatcher(
                allOf(
                    matchesCheck(TextContrastCheck::class.java),
                    matchesViews(withId(R.id.countTV))
                )
        )
}

Java

AccessibilityValidator myChecksValidator =
    AccessibilityChecks.enable()
        .setSuppressingResultMatcher(
            allOf(
                matchesCheck(TextContrastCheck.class),
                matchesViews(withId(R.id.countTV))));

Pengujian pengguna

Bersama metode pengujian lainnya dalam panduan ini, pengujian pengguna dapat memberikan analisis yang spesifik dan berharga tentang kegunaan aplikasi Anda.

Untuk menemukan pengguna yang dapat menguji aplikasi Anda, gunakan metode seperti berikut:

  1. Hubungi organisasi, perguruan tinggi, atau universitas setempat yang menyediakan pelatihan untuk penyandang disabilitas.
  2. Tanyakan kepada lingkaran sosial Anda. Mungkin ada penyandang disabilitas yang bersedia membantu.
  3. Tanyakan kepada layanan pengujian pengguna, seperti usertesting.com, apakah mereka dapat menguji aplikasi Anda dan menyertakan pengguna yang memiliki disabilitas.
  4. Bergabunglah dengan forum aksesibilitas, seperti Accessible, dan minta relawan untuk mencoba aplikasi Anda.

Untuk tips lainnya, tonton video ini di bagian pengujian pengguna, mulai menit 31.10 sampai 44.51: Di balik layar: Yang baru di aksesibilitas Android - Google I/O 2016.