Dalam Software Development Life Cycle, Testing menjadi salah satu tahapan yang krusial sebelum deployment mobile apps. Salah satu tugas dari Quality Assurance engineer, khususnya tester, adalah memastikan mobile apps berjalan lancar tanpa bug dan error ketika digunakan oleh customer.
Ada dua metode testing, manual dan automated. Manual testing mengandalkan test case yang sudah dibuat oleh tester, kemudian dilakukan manual satu per satu untuk mengidentifikasi bug yang muncul pada kondisi-kondisi tertentu. Manual testing dilakukan tanpa bantuan tools atau script. Meskipun manual testing relatif lebih mudah dilaksanakan, tetapi metode test ini akan memakan waktu lebih lama, cenderung subjektif tergantung pengalaman tester, serta memakan biaya yang cukup besar (utamanya karena dilaksanakan dalam waktu yang lebih lama).
Metode testing yang kedua adalah automated testing. Automated testing menggunakan tools untuk menjalankan skenario atau test case yang sudah ditentukan. Automated testing ada yang menggunakan script/coding dan scriptless. Apa saja benefit dari automated testing?
- Lebih cepat dibanding manual testing
Dengan terlebih dahulu membuat script untuk test case atau skenario di scriptless automated testing tools, maka semua test case akan dapat dilaksanakan di waktu yang sama. Hal ini tentu berbeda jika dilaksanakan secara manual. Ditambah lagi, fakta bahwa ada kemungkinan terjadinya human error dalam pelaksanaan manual testing, sehingga keakuratan perasi test tidak dapat dijamin 100%.
- Test case yang sama dapat digunakan di multiple device dan platform
Ketika aplikasi kita dikembangkan untuk dipergunakan di berbagai device, jika menggunakan manual testing maka akan memakan banyak waktu. Dengan automated test, semua test case yang dipersiapkan akan dapat didistribusikan dan dijalankan di berbagai device pada waktu yang sama, sehingga meningkatkan efisiensi pengetesan. Scalability pengetesan dengan metode automated testing akan lebih baik dibanding manual, karena mudah jika ingin menambahkan OS, platform, atau device baru.
- Dapat dilakukan berulang kali
Kita dapat mengetes bagaimana jika sebuah aktivitas dilakukan berulang kali di sebuah aplikasi. Test case yang sudah dimasukkan ke tools automated test dapat di set frekuensi pengulangannya.
Baca juga : Best Practise Test Case yang dapat Anda lakukan di tahun 2022
Tentu saja bukan berarti automated testing bebas dari kekurangan. Dua kekurangan utama dari Automated testing adalah
1) Butuh keterampilan untuk scripting test case. Karena beberapa tools automated testing membutuhkan coding di awal, oleh karena itu butuh engineer yang mengerti coding untuk dapat membuat test automation suite. Pada umumnya cost QA engineer yang menguasai coding akan lebih tinggi dibandingkan yang tidak.
2) Beberapa tools membutuhkan biaya investasi.
Karena membutuhkan script di awal pembuatan test case, automated testing kemudian berkembang dengan dibuatnya tools yang memungkinkan automated testing dilaksanakan script-less, atau tidak membutuhkan coding (kecuali untuk beberapa aspek yang bersifat critical). Kelebihan script-less automated test diantaranya adalah
- Open source, beberapa tools tersedia secara gratis dan dapat digunakan dengan bebas. Contohnya adalah testproject.io
- Record and play, sebagai ganti dari coding, tools ini mengharuskan kita untuk melakukan test case yang kita inginkan satu per satu. Tools kemudian akan merekam aktivitas ini, untuk kemudian dibakukan menjadi test case dan dapat diulang di kemudian hari.
- Mengurangi waktu persiapan, karena tidak memerlukan banyak coding untuk dapat dioperasikan. Selain itu record yang tersimpan dapat digunakan untuk regresi test, sehingga akan mudah jika mau mengulang test yang sudah pernah dilakukan meskipun jumlahnya banyak.
Kekurangan dari script-less adalah tools yang beroperasi secara online, sehingga setiap aplikasi yang akan dites harus berada di IP Public. Selain itu, kompleksitas aplikasi juga terkadang menjadi tantangan tersendiri, karena sistem yang sudah terbentuk di tool script-less ini membuat sedikitnya ruang untuk kustomisasi untuk mengakomodasi kondisi ekstrim yang dapat terjadi di aplikasi.
Crocodic mengadopsi kedua test manual dan automated. Tester kami mempersiap berbagai macam test case untuk aplikasi yang kompleks dan perlu dilaksanakan secara manual, dan di saat yang sama juga mempersiapkan test yang berulang agar dapat dilakukan dengan automated scriptless testing. Dengan kedua metode ini, kami berusaha memastikan aplikasi yang kami kembangkan untuk customer akan berfungsi secara optimal, minim bug, dan mengakomodasi kebutuhan user dengan baik.
Ceritakan kebutuhanmu dengan team analis kami, untuk mendapatkan gambaran servis dan biaya pengembangan disini!