Tutorial Pengujian Aplikasi iOS: Manual & Otomatisasi

Apa itu Pengujian Aplikasi iOS?

Pengujian Aplikasi iOS adalah proses pengujian di mana aplikasi iOS diuji pada perangkat Apple asli untuk memeriksa apakah aplikasi tersebut berfungsi sesuai yang diharapkan atau tidak untuk tindakan pengguna tertentu seperti waktu instalasi, antarmuka pengguna, pengalaman pengguna, penampilan, perilaku, fungsionalitas, waktu buka, kinerja, Aplikasi Daftar toko, dukungan versi OS, dll.

Mengapa Pengujian Aplikasi iOS?

Pengujian Aplikasi iOS diperlukan karena iOS adalah platform Apple untuk aplikasi seluler yang dirilis pada 29 Juni 2007. Berbeda dengan Android, Apple tidak melisensikan iOS untuk instalasi pada perangkat keras non-Apple. Aplikasi iOS dan iOS hanya dapat diinstal di perangkat Apple, oleh karena itu, Aplikasi iOS Anda harus kompatibel dengan versi iOS dan perangkat iOS.

Pengujian Aplikasi iOS

Ini adalah pertanyaan umum ketika pengembang membuat aplikasi iOS.

Pengujian Aplikasi iOS

Tidak peduli berapa banyak waktu yang Anda investasikan dalam desain dan implementasi, kesalahan tidak bisa dihindari, dan bug akan muncul. Ada beberapa bug umum pada aplikasi iOS. Seperti yang ditunjukkan pada gambar di bawah ini.

Pengujian Aplikasi iOS

Aplikasi mogok

Salah satu masalah yang paling membuat frustrasi saat menggunakan perangkat Apple adalah aplikasi mungkin sering mogok selama eksekusi. Sering kali aplikasi mogok karena ada beberapa bug atau kebocoran memori di aplikasi.

Ketidakcocokan aplikasi

Aplikasi iOS Anda mungkin berjalan dengan sempurna pada versi iOS saat ini, namun jika iOS ditingkatkan, aplikasi tersebut mungkin tidak berfungsi karena masalah ketidakcocokan.

Kerentanan keamanan

Kerentanan Keamanan di iOS memungkinkan peretas menyerang perangkat iOS Anda, mencuri informasi pribadi Anda. Hingga saat ini, kerentanan keamanan iPhone yang parah ditemukan di berbagai versi iOS.

Kebocoran memori

Kebocoran memori adalah blok memori yang dialokasikan yang tidak lagi digunakan oleh program. Kebocoran memori menyebabkan aplikasi iOS Anda mogok.
Itu adalah bug dan harus selalu diperbaiki.

iOS menguji MindMap

MindMap Pengujian IOS

Seperti yang ditunjukkan pada gambar di atas, iOS pengujian MindMap menunjukkan semua item yang harus dipertimbangkan penguji saat melakukan pengujian di iOS.

Daftar Periksa Pengujian Aplikasi iOS

Daftar periksa ini dirancang khusus untuk menguji karakteristik aplikasi seluler iOS. Jelas, ini hanya menguji karakteristik aplikasi umum dan bukan fungsinya.

  • Periksa waktu instalasi yang dibutuhkan oleh aplikasi ke perangkat. Pastikan aplikasi diinstal dalam waktu yang dapat diterima.
  • Setelah aplikasi diinstal, periksa apakah aplikasi tersebut memiliki ikon dan nama aplikasi. Selain itu, pastikan ikon dan nama cukup jelas dan mencerminkan maksud inti aplikasi.
  • Luncurkan aplikasi dan periksa apakah layar splash ditampilkan.
  • Periksa batas waktu layar splash dan waktu yang dibutuhkan untuk memuat layar beranda. Layar Beranda aplikasi harus dimuat dalam waktu yang dapat diterima. Jika layar Beranda hanya membutuhkan waktu lebih lama untuk dimuat, maka ada lebih banyak peluang bagi pengguna untuk keluar atau bahkan menghapus instalan aplikasi itu sendiri. Periksa juga bagaimana konten dimuat di layar Beranda.
  • Fungsi utama aplikasi akan segera terlihat. Ini harus berbicara sendiri.
  • Periksa apakah aplikasi mendukung orientasi lanskap dan potret. Jika demikian, periksa aplikasi di kedua orientasi. Antarmuka pengguna aplikasi harus diatur sebagaimana mestinya.
  • Tanpa koneksi internet, luncurkan aplikasi. Pastikan aplikasi berperilaku seperti yang dirancang/diinginkan. Ada kemungkinan aplikasi mogok saat diluncurkan atau hanya menampilkan layar kosong.
  • Jika aplikasi menggunakan layanan lokasi, periksa apakah peringatan izin lokasi ditampilkan atau tidak. Peringatan ini harus diberikan kepada pengguna hanya sekali.
  • Jika aplikasi mengirimkan pemberitahuan push, periksa apakah peringatan izin pemberitahuan push ditampilkan atau tidak. Peringatan ini juga harus diberikan kepada pengguna hanya sekali.
  • Luncurkan aplikasi, keluar dan luncurkan kembali. Periksa apakah aplikasi berperilaku seperti yang dirancang/diinginkan
  • Tutup aplikasi dengan mengetuk tombol Beranda pada perangkat dan buka aplikasi lagi. Periksa apakah aplikasi berfungsi sesuai desain/keinginan.
  • Setelah terinstal, periksa apakah aplikasi tersebut terdaftar di aplikasi pengaturan iPhone.
  • Setelah aplikasi ditayangkan, periksa apakah aplikasi tersebut dapat ditemukan di “App Store.” Akan ada versi OS yang didukung untuk aplikasi tersebut. Jadi, pastikan aplikasi tersebut dapat ditemukan di “App Store” perangkat versi OS yang didukung tersebut. Selain itu, aplikasi tersebut tidak boleh terdaftar di “App Store” perangkat versi OS yang tidak didukung.
  • Periksa apakah aplikasi masuk ke mode tidur saat berjalan di latar belakang untuk mencegah terkurasnya baterai.
  • Jika kinerja aplikasi lambat atau setiap kali konten sedang dimuat, periksa apakah ada ikon status kemajuan (“Memuat…”), sebaiknya dengan pesan tertentu.
  • Cari aplikasi dengan namanya di bilah pencarian perangkat. Periksa apakah aplikasi tersebut terdaftar
  • Periksa apakah tampilan tombol yang melakukan tindakan standar tidak diubah di aplikasi (misalnya: segarkan, atur, buang, Balas, kembali, dll.)
  • Periksa apakah tombol standar tidak digunakan untuk fungsi lain selain biasanya digunakan

Strategi Pengujian iOS

Gambar di bawah memperkenalkan beberapa jenis strategi pengujian iOS yang umum.

Strategi Pengujian IOS

Pengujian otomatis

Pengujian otomatis adalah keuntungan terbesar dari pengujian iOS. Ini memungkinkan Anda mendeteksi bug dan masalah kinerja dengan cepat. Manfaat pengujian otomatis seperti yang ditunjukkan di bawah ini:

  • Pengujian otomatis dapat dijalankan di beberapa perangkat, sehingga menghemat waktu Anda
  • Pengujian otomatis dapat menargetkan SDK. Anda dapat menjalankan pengujian pada versi SDK yang berbeda
  • Pengujian otomatis meningkatkan produktivitas pengujian Anda, menghemat biaya pengembangan perangkat lunak
  • Ada banyak kerangka Pengujian sumber terbuka yang mendukung pengujian otomatis di iOS

Pengujian unit dengan OCUnit

Ketika SDK iOS asli dirilis, ada kekurangannya Pengujian Unit kemampuan. Jadi Apple telah mengembalikannya Unit OCU solusi pengujian unit di iOS SDK versi 2.2.

OCUnit adalah kerangka pengujian untuk C-Objective di Mac OS. Keuntungan terbesar dari kerangka OCUnit adalah integrasi yang erat ke dalamnya Xcode lingkungan pengembangan seperti yang ditunjukkan di bawah ini.

Pengujian Unit Dengan OCUnit

Beberapa manfaat OCUnit ditunjukkan pada gambar di bawah ini.

Pengujian Unit Dengan OCUnit

Pengujian UI dengan UIAutomation

Pengujian UI Dengan UIAutomation

Otomatisasi UI adalah JavaNaskah perpustakaan yang disediakan oleh Apple Inc, yang dapat digunakan untuk melakukan pengujian otomatis pada perangkat nyata dan pada Simulator iOS. Kerangka kerja ini ditambahkan ke iOS SDK4.0. Dengan menggunakan Otomatisasi UI, Anda dapat mengotomatiskan pengujian aplikasi tidak hanya pada simulator tetapi juga pada perangkat sebenarnya.

UIAutomation memberi Anda manfaat berikut:

  • Kurangi upaya Pengujian Manual
  • Gunakan lebih sedikit memori Anda untuk menjalankan semua pengujian Anda
  • Sederhanakan prosedur pengujian UI Anda (cukup tekan satu atau tiga tombol dan jalankan seluruh rangkaian pengujian Anda)

Instrumen UIAutomation bekerja dari skrip yang ditulis JavaSkrip. Ini mensimulasikan peristiwa pengguna pada aplikasi iOS target.

Kontra Otomasi UI vs. Kelebihan

Pro Kekurangan
1. Dukungan yang baik untuk gerakan dan rotasi Itu bukan open source, kurang dukungan dari pengembang
2. Dapat menjalankan tes UIAutomation pada perangkat, bukan satu-satunya simulator. Tidak dapat berintegrasi dengan alat lain dengan sangat baik
3. Dikembangkan oleh JavaScript, ini adalah bahasa pemrograman yang populer.

Pengujian UI Dengan UIAutomation

Gambar di atas mewakili beberapa kelas umum dalam kerangka UIAutomation.

  • Elemen UIA kelas adalah kelas super untuk semua elemen antarmuka pengguna dalam konteks Otomatisasi
  • UIATarget kelas mewakili elemen antarmuka pengguna tingkat tinggi dari sistem yang diuji
  • UIALogger kelas menyediakan informasi pengujian dan kesalahan pada fungsionalitas pengambilan
  • Tampilan Aktivitas UIAkelas memungkinkan akses dan kontrol terhadap tampilan aktivitas dalam aplikasi Anda.
  • Lembar Tindakan UIA kelas memungkinkan akses ke, dan kontrol, lembar tindakan dalam aplikasi Anda.
  • Pengguna Aksi Acara
  • kelas penggeser UIS
  • Kelas Tombol UIA
  • kelas UIAKey
  • Kelas papan ketik UIA

Kerangka pengujian otomatis lainnya

  • Jujur: Otomatis Tes Penerimaan kerangka kerja untuk iPhone dan iPad
  • KIF : adalah iOS tes integrasi kerangka. Hal ini memungkinkan otomatisasi aplikasi iOS dengan mudah dengan memanfaatkan atribut aksesibilitas yang disediakan OS bagi mereka yang memiliki disabilitas penglihatan.

Pengujian manual

Pengujian Eksplorasi

Ini adalah pengujian tanpa rencana pengujian formal. Pengujian Eksplorasi adalah metode pengujian berbiaya rendah, namun dapat melewatkan potensi bug di aplikasi iOS Anda.

Kontra Pengujian Eksplorasi vs. Kelebihan

Pro Kekurangan
1. Less persiapan diperlukan, deteksi dini bug serius. Membutuhkan keterampilan penguji yang tinggi
2. Tidak perlu Rencana Tes mempercepat deteksi bug. Cakupan tes rendah. Itu tidak menjamin bahwa semua kebutuhan Anda diuji.
3. Kebanyakan bug ditemukan lebih awal melalui semacam pengujian eksplorasi Kurangnya dokumentasi pengujian

Pengujian Pengguna

Pengujian pengguna adalah jenis Pengujian Manual di iOS. Tujuan pengujian ini bukan hanya untuk membuat aplikasi yang lebih baik bebas serangga aplikasi. Gambar di bawah menunjukkan empat jenis Pengujian Pengguna

Pengujian Pengguna

Pengujian konsep

Evaluasi respons pengguna terhadap ide aplikasi sebelum diluncurkan ke pasar. Prosedur pengujian konsep pada iOS dijelaskan sebagai berikut

Pengujian Konsep

Kegunaan Pengujian

Kegunaan Pengujian adalah tes seberapa mudah menggunakan aplikasi iOS Anda. Dalam pengujian iOS, tes kegunaan bisa jadi tercatat untuk diingat atau dibagikan kepada orang lain.

Ada beberapa alat yang mendukung pengujian kegunaan di iOS.

TryMyUI aplikasi pengujian pengguna seluler untuk Android dan iOS.

menyenangkan.io, alat ini dapat menangkap interaksi pengguna sebenarnya di aplikasi iOS Anda.

Pengujian beta

Pengujian Beta adalah tes integrasi dengan data nyata untuk mendapatkan umpan balik akhir dari pengguna. Untuk mendistribusikan aplikasi untuk pengujian beta, Anda harus mengikuti langkah-langkah di bawah ini.

Pengujian Beta

-Pra-kondisi: Jika Anda melakukan pengujian beta pada kandidat akhir untuk rilis, pastikan untuk memvalidasi aplikasi sebelum mendistribusikannya ke penguji.

-Temukan penguji melalui layanan: Anda mengumpulkan ID perangkat dari penguji dan menambahkannya ke dalamnya Pusat Anggota

-Buat distribusi ad-hoc: Distribusi Ad Hoc memungkinkan penguji menjalankan aplikasi Anda di perangkat mereka tanpa memerlukannya Xcode. Langkah ini mencakup 2 sub-langkah

  • Buat sertifikat distribusi
  • Buat profil penyediaan Ad-hoc

-Mintalah umpan balik dari penguji: Penguji melakukan pengujian dan mengirimkan laporan bug kepada Anda. Setelah aplikasi Anda dirilis, Anda bisa mendapatkan laporannya iTunes Menghubung.

Pengujian A / B

Pengujian A / B adalah salah satu cara paling ampuh untuk melakukannya mengevaluasi efektivitas aplikasi iOS Anda. Itu menggunakan percobaan acak dengan dua perangkat, A dan B.

Pengujian A / B

Pengujian A/B mencakup tiga langkah utama

  • Konfigurasikan tes: Menyiapkan 2 versi aplikasi iOS Anda (A & B) dan metrik pengujian
  • uji: Uji 2 versi aplikasi iOS di atas pada perangkat secara bersamaan.
  • Menganalisa: Ukur dan pilih versi yang lebih baik untuk dirilis

Alat-alat berikut mendukung pengujian A/B pada iOS.

  • Timbul: Pengujian A/B untuk iOS dan Android. Itu dapat diintegrasikan ke dalam aplikasi iOS Anda dan membuat proses pengujian lebih cepat.

Praktik terbaik untuk pengujian A/B

  • Tentukan target ujianmu. Ujian apa pun tidak ada gunanya tanpa target.
  • Menonton pengguna akhir menggunakan aplikasi Anda untuk pertama kalinya
  • Run satu tes hanya per pembaruan. Ini menghemat waktu Anda saat melakukan pengujian
  • Memantau ujianmu dengan hati-hati. Anda dapat mempelajari pengalaman dari pengujian Anda dengan memantaunya.

Pengujian iOS Praktik terbaik

Berikut beberapa tip yang harus Anda ketahui saat mengatur pengujian aplikasi iOS Anda

  1. Uji aplikasi pada a perangkat nyata untuk menjadi nyata tentang kinerja
  2. Memperbaiki serta Menambah metode pengujian Anda, karena metode pengujian tradisional tidak lagi memadai untuk mencakup semua pengujian pada pengujian iOS
  3. Menggunakan log konsol untuk menguji aplikasi iOS. Ini adalah fitur iOS yang mencakup informasi dari setiap aplikasi di perangkat.
  4. Dokumen bug aplikasi menggunakan layar bawaan pendek memerintah. Ini membantu pengembang memahami bagaimana bug terjadi.
  5. Pelaporan kerusakan adalah alat yang berguna saat menguji aplikasi Anda. Mereka dapat mendeteksi kerusakan dan mencatat detail sehingga Anda dapat menyelidiki bug dengan mudah.

MITOS tentang pengujian iOS

Bagian ini membahas beberapa mitos dan kenyataan populer tentang pengujian iOS

Menguji aplikasi di iOS dan Android adalah hal yang sama.

iOS dan Android adalah dua platform yang dikembangkan oleh Apple Inc dan Google. Mereka sangat berbeda. Lingkungan pengujian, kerangka pengujian, bahasa pemrograman, dll.

Uji coba aplikasi di iOS Simulator sudah cukup.

iOS Simulator tidak cukup kuat untuk menguji suatu aplikasi. Karena iOS Simulator memiliki beberapa keterbatasan:

  • Keterbatasan perangkat keras (Kamera, input Mikrofon, Sensor)
  • UI aplikasi Anda mungkin tampak berjalan lebih cepat dan lancar dibandingkan di perangkat
  • Keterbatasan API
  • Beberapa kerangka kerja tidak didukung (Media Player, Store Kit, Message UI..)

Semua orang akan mengunduh aplikasi saya di app store karena memiliki banyak fitur

Semakin banyak fitur yang dimiliki aplikasi Anda, semakin banyak bug yang bisa Anda dapatkan. Tidak ada pengguna yang akan mengunduh aplikasi Anda jika masih banyak cacat.