Manual VS. Otomatis: Cara yang Tepat untuk Menguji Aplikasi Anda

Diterbitkan: 2022-02-24
pengujian

Saat Anda merilis aplikasi, Anda harus 100% yakin itu akan bekerja dengan lancar dan sempurna. Dan, tentu saja, itu harus memenuhi harapan pengguna Anda juga! Jika tidak, proyek Anda mungkin gagal, yang bukan merupakan hasil yang diinginkan, bukan? Jadi, Anda perlu memperhatikan pengujian jaminan kualitas aplikasi (QA).

Tapi apa pendekatan yang tepat untuk menguji platform Anda? Teknik mana yang harus dipilih? Apakah layak untuk memeriksa kinerja produk secara manual atau menggunakan otomatisasi? Atau mungkin memilih kedua opsi sekaligus?

Dalam jaminan kualitas (QA), otomatisasi pengujian adalah salah satu juara kecepatan terbesar. Namun, dalam hal fungsionalitas dan kesan pertama, tidak ada pengganti untuk pengujian manual. Faktanya adalah, meskipun perangkat lunak pengujian otomatis menjadi lebih halus, pengujian aplikasi seluler manual masih memainkan peran besar dalam pengiriman aplikasi berkualitas.

Kedua kategori pengujian aplikasi seluler memiliki kelebihan dan kekurangan yang berbeda, tetapi sangat penting bagi perusahaan pengembang aplikasi seluler untuk mempraktikkan pengujian manual untuk memberikan pengalaman pengguna yang luar biasa.

Layanan peringkat aplikasi ASO World
Klik "Pelajari Lebih Lanjut" untuk mendorong bisnis aplikasi & game Anda dengan layanan promosi aplikasi ASO World sekarang.

Dasar-dasar pengujian aplikasi seluler

Dalam istilah yang paling luas, ada dua pendekatan untuk menguji Aplikasi Seluler. Anda dapat meminta manusia menggunakan aplikasi dalam situasi yang berbeda untuk melihat bagaimana responsnya, atau Anda dapat meminta aplikasi mengarahkan perangkat lunak ke tempat yang menarik dan mencari hasil yang diharapkan.

Istilah kedua ini biasanya disebut sebagai "otomatisasi pengujian", atau, mungkin "pengujian otomatis". Mungkin lebih akurat untuk menyebutnya sebagai "eksekusi dan evaluasi pengujian otomatis", atau "pemeriksaan otomatis", tetapi istilah sebelumnya telah berlaku.

Kedua pendekatan ini dapat valid dalam situasi yang berbeda, dan validitas tersebut dapat berubah seiring waktu dalam momen yang berbeda dari siklus hidup aplikasi. Dalam praktiknya, sebagian besar organisasi menggunakan perpaduan keduanya, mungkin mendorong beberapa eksplorasi manusia kepada pelanggan.

Apa itu pengujian otomatis dan manual?

Memastikan perangkat lunak berkualitas tinggi adalah proses yang kompleks, yang membutuhkan banyak waktu dan biaya. Namun, pengeluaran seperti itu tidak dapat dihindari (asalkan Anda ingin sukses dalam jangka panjang).

Penting untuk menyusun strategi pengujian yang kompeten yang memungkinkan Anda mendapatkan efek maksimal dengan sedikit usaha dan memahami apakah situs atau aplikasi memenuhi persyaratan yang ditetapkan.

Pengujian manual

Pengujian otomatis adalah proses di mana pengujian pra-skrip dijalankan pada aplikasi sebelum dirilis ke produksi. Pengujian otomatis membantu Anda menemukan kekurangan di aplikasi Anda lebih cepat. Otomatisasi pengujian dapat digunakan untuk menjalankan pengujian yang berulang, yang perlu dijalankan secara berkala, dan yang dapat membantu Anda menemukan bug pada tahap awal.

Sementara tujuan pengujian manual adalah untuk menguji apa yang disebut "pengalaman pengguna", pengujian otomatis bertujuan untuk menguji semua fungsi yang menjadi ciri aplikasi.

Enam belas tahun setelah saya pertama kali diberi tahu bahwa pengujian pada manusia akan "hilang", dan hampir satu dekade setelah saya pertama kali mendengar penjelajah manusia disebut "dinosaurus", pengujian manual tetap menjadi pendekatan pengujian yang paling umum untuk aplikasi seluler dan desktop.

Dengan pengujian manual, maksud saya manusia benar-benar menggunakan aplikasi melalui ujung depan. Ada berbagai tempat pengujian manual ini mungkin terjadi. Kebanyakan pemrogram setidaknya mensimulasikan aplikasi, jika tidak meletakkannya di telepon, sebelum meneruskannya ke orang lain untuk diuji. Beberapa perusahaan mempekerjakan penguji untuk masuk lebih dalam, melihat di luar jalur bahagia atau ke dalam model perangkat yang berbeda.

Jika perangkat lunak tersebut bersifat internal, perusahaan mungkin meminta orang yang akan menggunakan perangkat lunak tersebut benar-benar melakukan Pengujian Penerimaan Pengguna, yang lebih berfokus pada "dapatkah saya melakukan pekerjaan saya dengan perangkat lunak ini". Beberapa perusahaan merilis perangkat lunak lebih awal untuk penguji "beta", yang mungkin adalah karyawan, menggunakan alat seperti Microsoft AppCenter.

Akhirnya, perusahaan seperti Applause dan Testio hadir untuk mengambil versi "beta" itu dan melakukan crowdsource, menyediakan puluhan hingga ribuan bola mata untuk melihat perangkat lunak, dalam berbagai konfigurasi, dalam waktu singkat.

Terlepas dari siapa bagaimana atau kapan pengujian secara manual memberi Anda perasaan sebenarnya tentang bagaimana sebenarnya menggunakan aplikasi. Tes manual dapat melihat apakah tombol berada pada posisi yang tepat jika tombol tersebut cukup besar jika mereka tumpang tindih jika warnanya terlihat serasi, dll. Komputer menjadi sangat buruk dalam mengevaluasi jika gambar di layar "terlihat benar".

Namun, ada beberapa tindakan yang dapat diuji komputer dengan mudah. Misalnya, ketika Anda mengetikkan nama pengguna dan kata sandi dan mengirimkan, Anda harus pergi ke layar yang menunjukkan nama Anda dan bahwa Anda telah masuk, dan membiarkan kata sandi salah akan menghasilkan teks kesalahan tertentu.

Tantangan pengujian seluler kemungkinan kecil adalah yang mana dari dua paradigma yang harus diterima, tetapi berapa banyak, kapan, dan siapa.

Mengapa saya perlu pengujian manual?

Pengujian manual memberikan beberapa umpan balik tentang kegunaan dan penampilan bersama dengan fungsionalitas. Penguji memainkan peran sebagai pengguna yang mencoba semua yang ada di aplikasi itu, melakukan tindakan biasa yang akan dilakukan pengguna, untuk melihat apakah atau saat aplikasi mogok. Dengan pengujian manual, Anda sering mendapatkan umpan balik tentang kinerja, pengurasan baterai, atau panas berlebih yang cukup awal untuk memperbaikinya sebelum dirilis. Umpan balik sering "gratis" hanya karena penguji memperhatikan.

Berapa banyak perangkat yang saya perlukan untuk pengujian?

Anda dapat mencoba menguji secara manual setiap perangkat yang didukung dengan setiap versi sistem operasi yang didukung. Terakhir kali kami memeriksa tiga tahun lalu ada lebih dari 24.000 perangkat Android yang berbeda, dan kami berhenti menghitung. Secara realistis, sebagian besar organisasi menguji dengan versi terbaru yang didukung, satu rilis kembali, dan versi terlama didukung. Antara Android dan iOS, tablet dan ponsel, sebagian besar perusahaan menengah dan besar yang bekerja sama dengan kami memiliki lab uji yang terdiri dari 10-20 perangkat.

Pengujian otomatis

Apa itu pengujian otomatis?

Ketika orang menggunakan frasa Pengujian otomatis, itu biasanya berarti memiliki alat, seperti Selenium atau Appium, mengarahkan antarmuka pengguna aplikasi, memeriksa hasil yang diharapkan di sepanjang jalan.

Pemeriksaan ini berasal dari serangkaian perintah dan titik inspeksi, yang dapat disimpan baik dalam sesuatu seperti spreadsheet, atau, lebih mungkin, program komputer yang sebenarnya.

Dengan demikian, tes sudah ditulis sebelumnya; setiap tes mungkin merupakan program komputer. Setiap tes mungkin mengklik atau mengetik belasan kali, dan memiliki selusin poin verifikasi lainnya. Setelah pengujian dilakukan, jika perilaku aplikasi tidak berubah, pengujian otomatis dapat menemukan cacat dalam aplikasi dengan sangat cepat, biasanya dalam beberapa menit setelah komit ke kontrol versi.

Otomatisasi pengujian dapat digunakan untuk menjalankan pengujian yang berulang, yang tidak memerlukan pemahaman manusia, yang perlu dijalankan secara berkala, dan yang dapat membantu Anda menemukan bug pada tahap awal. Sementara tujuan pengujian manual adalah untuk menguji "pengalaman pengguna", pengujian otomatis bertujuan untuk menguji semua fungsionalitas yang menjadi ciri aplikasi.

Pengujian otomatis akan mengklik tombol yang "tampak salah" dan berada di tempat yang salah dan tidak mencatat masalah (kecuali jika Anda berpikir untuk memeriksa terlebih dahulu)--ini lebih mungkin untuk menemukan kesalahan, hasil pencarian yang salah, dan sebagainya.

Mengapa saya memerlukan pengujian otomatis?

Seiring berkembangnya aplikasi, waktu untuk mengujinya juga bertambah. Pengujian otomatis mengurangi waktu tersebut untuk rilis yang sering. Itu membuat pengujian otomatis menjadi kunci untuk mempercepat proses pengujian, mengurangi biaya, dan secara radikal mengurangi waktu-untuk-umpan balik untuk kesalahan besar dari hari ke menit. Otomatisasi pengujian memungkinkan Anda untuk:

Uji fungsionalitas yang berulang dan karena itu rawan kesalahan jika dilakukan secara manual; kasus uji yang memiliki hasil yang dapat diprediksi;

Mudah mengatur dan menjalankan skenario pengujian yang rumit dan membosankan

Paling penting: Anda dapat menguji lebih banyak perangkat seluler secara bersamaan, menghemat waktu. Menggunakan simulator atau cloud, Anda dapat melakukan ini tanpa membeli atau mengelola perangkat!

Berapa banyak kasus uji yang saya perlukan untuk serangkaian pengujian dasar?

Ini akan sangat bervariasi pada aplikasi, dan seberapa besar "test case" itu. Jika kasus pengujian adalah pengujian dom-ke-database sederhana yang memeriksa satu operasi logis, maka fungsi tipikal mungkin memiliki empat hingga sepuluh pengujian, dan aplikasi tipikal mungkin memiliki empat hingga sepuluh fitur.

Jika aplikasi dikodekan dengan dua bahasa pemrograman yang berbeda, satu untuk iOs dan satu untuk Android, Anda mungkin perlu menggandakannya, atau menulis lapisan abstraksi dan memiliki satu set skenario bisnis dan dua implementasi yang berbeda menurut sistem operasi.

Pengujian manual untuk aplikasi seluler

Manfaat pengujian manual

  • Menguji antarmuka pengguna secara akurat dan cepat
  • Mengalami dan menguji aplikasi sebagai pengguna nyata untuk mereplikasi pengalaman terakhir
  • Mengidentifikasi dan mereproduksi masalah yang dilaporkan dengan mudah
  • Menangani masalah rumit dan kasus penggunaan
  • Menguji perubahan kecil dan proyek lebih cepat dan lebih hemat biaya

Kelemahan dari pengujian manual

  • Kesalahan manusia mempengaruhi akurasi
  • Tes harus diulang secara manual setiap kali
  • Tugas pengujian yang membosankan jauh lebih sulit
  • Cakupan yang luas membutuhkan banyak sumber daya, seperti jumlah pekerja penguji dan akses ke beragam perangkat

Pengujian manual di aplikasi seluler digunakan untuk:

  • Pengujian Eksplorasi: Sebagai suatu pendekatan, pengujian eksplorasi menilai penguji sebagai bagian integral dari proses pengujian. Ini membutuhkan penguji manual untuk mendapatkan manfaat dari wawasan, kreativitas, dan pengetahuan mereka.
  • Pengujian Ad-hoc: Menurut definisi, ad-hoc adalah jenis pengujian informal. Ini bertujuan untuk merusak sistem, sehingga tidak dapat dilakukan secara terencana. Dibutuhkan penguji untuk berperilaku tidak teratur untuk mencoba dan merusak sistem.
  • Pengujian Kegunaan: Penguji manual dapat merasakan pengalaman pengguna akhir. Menggunakan aplikasi seperti yang dirancang untuk digunakan akan membantu menentukan seberapa ramah pengguna aplikasi dan masukan manusia adalah kuncinya.

Pengujian otomatis untuk aplikasi seluler

Manfaat pengujian otomatis

  • Melakukan tes yang membosankan dan menuntut lebih cepat
  • Menguji banyak perangkat
  • Tes otomatis dapat digunakan berulang kali
  • Hasil yang cepat, efisien, dan akurat
  • Beberapa tes otomatis dapat dilakukan secara bersamaan
  • Untuk aplikasi seluler besar, pengujian otomatis lebih hemat biaya

Kelemahan dari pengujian otomatis

  • Tidak ada wawasan tentang pengalaman pengguna dari sudut pandang visual
  • Biaya untuk menjalankan dan menjalankan pengujian otomatis tinggi karena memerlukan kode
  • Pemborosan dalam situasi skala kecil
  • Masih ada beberapa kesalahan manusia karena uji otomasi diprogram oleh manusia dan memerlukan pengujian sendiri
  • Membutuhkan konfigurasi dan kode khusus untuk setiap aplikasi seluler

Pengujian otomatis di aplikasi seluler digunakan untuk:

  • Pengujian Regresi: Salah satu kekuatan terbesar pengujian otomatis adalah kemampuan untuk memiliki skrip pengujian yang siap dijalankan kapan pun. Salah satu cara terbaik untuk memanfaatkan pengujian otomatis adalah dengan perubahan kecil yang konstan ketika Anda ingin memastikan mereka tidak akan memiliki efek negatif.
  • Pengujian Kinerja: Tidak seperti pengujian kegunaan, kinerja lebih merupakan permainan angka. Menguji seberapa cepat, responsif, dan stabil aplikasi pada perangkat yang berbeda atau dalam kondisi yang berbeda adalah sesuatu yang berkembang pesat dalam pengujian otomatis. Skala dan akurasi hasil membuat pengujian otomatis menjadi penting untuk pengujian kinerja.
  • Pengujian Berulang: Setelah biaya awal pengkodean dan konfigurasi skrip pengujian, pengujian otomatis jangka panjang menjadi sangat hemat biaya. Mampu mengulang pengujian tanpa biaya sumber daya penguji tambahan membuatnya lebih mudah untuk menguji dan mendapatkan hasil.