Menguji aplikasi iOS Anda

Berbeda dengan jenis aplikasi iOS lainnya, aplikasi Home API memiliki pertimbangan dan tantangan uniknya sendiri, termasuk dependensi pada perangkat smart home fisik, keandalan jaringan, keamanan dan privasi, serta interoperabilitas perangkat dan protokol. Perbedaan ini berdampak pada pengujian.

Menyiapkan lingkungan pengujian Anda

Lingkungan pengujian yang kuat sangat penting untuk menguji aplikasi Home API.

Strategi yang baik adalah mengisolasi perangkat pengujian Anda di jaringan Wi-Fi khusus. Hal ini mencegah gangguan dari perangkat lain dan memungkinkan Anda menyimulasikan berbagai kondisi jaringan seperti bandwidth yang dibatasi.

Anda sebaiknya melakukan pengujian menggunakan berbagai jenis perangkat smart home, dari beragam produsen. Pastikan untuk melakukan pengujian dengan perangkat fisik yang sebenarnya. Perangkat virtual dan emulator memiliki tempatnya sendiri, tetapi tidak boleh diandalkan secara eksklusif.

Demikian pula, menguji aplikasi Anda dengan berbagai perangkat iOS dari beberapa produsen, dengan dimensi layar yang bervariasi, dan menjalankan versi iOS yang berbeda akan membantu memverifikasi kompatibilitas yang lebih luas.

Mengumpulkan alat

Alat berikut berguna dalam menguji aplikasi Home API:

Alat Deskripsi
Google Home Playground Bukan pengganti pengujian dengan perangkat fisik yang sebenarnya, tetapi sangat berharga untuk banyak skenario pengujian.
Matter Virtual Device (MVD) Aplikasi emulasi lain yang dapat membantu saat melakukan pengujian dengan Matter perangkat di aplikasi Home API.
Emulator jaringan Memungkinkan Anda menyimulasikan berbagai kondisi jaringan dan respons API, yang sangat membantu jika Anda menggunakan backend cloud.
TestFlight Memungkinkan Anda mengotomatiskan pengujian UI. Anda harus membuat mock API yang mendasarinya untuk menyimulasikan interaksi hardware.
Konsol XCode Menangani dan menganalisis data log.
XCUIAutomation Memungkinkan Anda mengotomatiskan pengujian UI. Anda harus membuat mock API yang mendasarinya untuk menyimulasikan interaksi hardware.

Menerapkan pendekatan dan strategi pengujian yang berbeda

Anda harus menerapkan berbagai pendekatan pengujian ke aplikasi Home API. Untuk informasi umum tentang berbagai metode, lihat Menguji aplikasi di TestFlight. Selain pengujian pengalaman pengguna dan keamanan yang diharapkan akan dilakukan oleh semua aplikasi iOS, beberapa area pengujian sangat relevan untuk aplikasi Home API dan disoroti secara lebih mendetail di bagian berikut.

Pengujian fungsional

Bergantung pada kemampuan aplikasi Anda, Anda mungkin ingin memberikan perhatian khusus pada beberapa area berikut:

  1. Penemuan dan pemasangan perangkat, termasuk penyiapan awal dan pemasangan dengan perangkat baru, penemuan ulang perangkat yang ada setelah aplikasi dimulai ulang, perangkat dimulai ulang, atau perubahan jaringan. Periksa juga skenario seperti perangkat yang tidak responsif, atau pengguna yang memasukkan kredensial yang salah.
  2. Sinkronisasi status, memastikan aplikasi diupdate untuk mencerminkan status saat ini secara akurat dan tepat waktu.
  3. Cara izin dikelola dan diterapkan, terutama jika aplikasi Anda mendukung beberapa pengguna atau akses rumah bersama. Hal ini mencakup verifikasi bahwa aplikasi Anda menangani izin yang dicabut dengan baik.
  4. Jika aplikasi Anda mendukung adegan, seperti adegan "Selamat Malam" yang mematikan semua lampu, uji pembuatan, modifikasi, dan eksekusi adegan. Uji otomatisasi, termasuk pemicu dan tindakan.

Pengujian performa

Pastikan aplikasi Anda responsif dan tidak menimbulkan latensi yang tidak perlu. Jika memungkinkan, lakukan pengujian dengan sejumlah besar perangkat untuk menilai skalabilitas dan performa aplikasi Anda saat beban tinggi. Lihat juga konsumsi CPU, memori, dan baterai aplikasi Anda, terutama selama komunikasi perangkat aktif, untuk melihat apakah penggunaan resource-nya wajar.

Pengujian keandalan dan stabilitas

Karena bergantung pada konektivitas jaringan, aplikasi Home API harus diuji terhadap skenario berikut:

  1. Fluktuasi jaringan
    • Simulasikan gangguan Wi-Fi, sinyal lemah, dan pengalihan jaringan.
    • Pastikan aplikasi Anda menangani pemutusan dan koneksi ulang dengan baik.
    • Pastikan perintah diantrekan dan dieksekusi saat konektivitas dipulihkan, atau berikan pesan error yang sesuai.
    • Uji aplikasi dari jaringan jarak jauh, bukan hanya dari jaringan rumah.
  2. Pemutusan perangkat
    • Cabut perangkat secara fisik.
    • Nyalakan ulang perangkat.
  3. Operasi serentak
    • Kirim urutan perintah yang cepat.
    • Minta beberapa pengguna mencoba mengontrol perangkat yang sama secara bersamaan.
    • Uji adegan dan otomatisasi yang tumpang-tindih.
  4. Penanganan error
    • Paksa error API, misalnya, dengan membuat mock respons server API cloud.
    • Uji input yang tidak valid dari pengguna.
    • Verifikasi penurunan kualitas yang baik dan pesan error yang informatif.
  5. Keandalan - Jalankan aplikasi dan perangkat yang terhubung dalam jangka waktu yang lama untuk menemukan kemungkinan kebocoran memori atau masalah stabilitas.

Sebelum meluncurkan aplikasi

Sebaiknya uji aplikasi yang menggunakan Home API secara menyeluruh untuk memverifikasi bahwa aplikasi tersebut memenuhi semua persyaratan fungsional dan kualitas sebelum diluncurkan. Gunakan Laporan Pengujian Aplikasi Google Home API sebagai panduan untuk menguji fungsi aplikasi Anda.

Jika Anda diminta untuk mengirimkan Laporan Pengujian Aplikasi Google Home API, kirimkan laporan tersebut ke Google Technical Account Manager (TAM) agar mereka dapat meninjau laporan tersebut dan menggunakannya sebagai referensi saat menguji aplikasi Anda.