Tekno

Apa itu Automation Testing ?

Testing adalah fase penting dari pengembangan perangkat lunak dan aplikasi. Tim pengembangan dapat membuat aplikasi paling powerful dan terbaik, dilengkapi dengan fitur-fitur unggulan, dan membuatnya dengan deadline waktu yang telah ditentukan. Namun, jika perangkat lunak tidak berfungsi dengan benar, itu semua tidak akan sia-sia dan ini akan gagal.

Testing meyakinkan pengembang bahwa produk jadi berfungsi seperti yang dirancang dan mengidentifikasi masalah apa pun yang perlu diperbaiki sebelum publik mendapatkan kesempatan untuk melihatnya. Dengan semakin banyaknya aplikasi yang dirilis setiap hari, ada kebutuhan akan cara yang nyaman dan efisien untuk melakukan testing. Tidak sembarang metode yang digunakan untuk proses testing, karena testing dapat mengakomodasi meningkatnya gelombang pasang produk baru.

Teknik testing tersebut adalah automation teting. Dalam artikel akan dipaparkan tentang automation testing dengan mengetahui pengertiannya, mengapa digunakan, dan bagaimana kelebihan dan kekurangannya.

Apa itu Automation Testing ?

Automation testing adalah prosedur di mana alat otomatis digunakan untuk menulis kasus testing dan menjalankannya, termasuk karakteristik testing seperti loading, stress, dan performance. Proses otomatis dirancang untuk memberikan efisiensi, efektivitas, dan akurasi yang lebih tinggi. Ini sangat cocok untuk menangani tugas berulang serta fungsi yang terbukti sulit bagi testing manual.

Mengapa Automation Testing Digunakan ?

Automation testing adalah alat yang ideal untuk menjalankan banyak tes secara bersamaan dan menangani banyak pekerjaan yang akan dianggap membosankan dan berulang oleh penguji manusia. Jika Kita ingin menjalankan tes tetapi ditekan untuk waktu dan tidak bisa secara maksimal dalam melakukan testing, maka automation testing adalah pilihan terbaik Kita. Kita dapat memulai uji coba dan melupakan  proses testing tersebut untuk sementara waktu karena tidak perlu intervensi manusia. Automation testing juga berguna untuk menguji situs multi bahasa.

Kelebihan Automation Testing

Automation testing membawa banyak positif yang berguna untuk proses testing aplikasi. Berikut beberapa kelebihan dari automation testing yaitu :

  • Beban Testing

Saat menguji perangkat lunak baru, salah satu faktor terpenting adalah kemampuan aplikasi untuk menangani sejumlah besar pengguna secara bersamaan. Automation testing dapat menjalankan ribuan tes simultan, bertindak seperti jutaan pengguna, sesuatu yang tidak dapat ditiru oleh testing manual. Dengan menggunakan tes beban yang realistis, pengembang dapat menempatkan perangkat lunak mereka melalui langkah-langkah dan mendapatkan ide yang baik tentang bagaimana aplikasi tersebut akan menangani situasi di dunia nyata.

  • Kehandalan dan Akurasi

Manusia bisa membuat kesalahan sehingga itu sebabnya automation testing diperlukan. Automation testing dapat melakukan testing yang sama berulang-ulang, tanpa penyimpangan, sehingga menjamin kinerja yang akurat secara konsisten.

Automation testing membawa fungsionalitas “set it and forget it” ke proses testing. Aktifkan testing, tinggalkan, dan lihat hasilnya saat Kita kembali. Dibandingkan kita melakukan tugas-tugas berulang tersebut, Kita bebas untuk menangani tugas lain. Selain itu, tidak perlu waktu tambahan untuk mengulangi tes. Mempertimbangkan bagaimana para developer memiliki begitu banyak tugas dan tanggung jawab, maka time saver menjadikan fitur yang sangat penting dalam automation testing.

  • Bagian Fundamental dari DevOps

Filosofi desain DevOps telah mendapatkan daya tarik yang cukup besar dalam dunia pengembangan aplikasi, dan automation testing adalah elemen yang diperlukan. Salah satu konsep DevOps adalah “gagal lebih cepat, gagal lebih awal,” dan dengan automation testing yang tersedia, ini menjadi lebih mudah dicapai.

  • Bersifat Reusable

Automation testing awalnya membutuhkan outlay waktu dan sumber daya yang signifikan selama pengaturan. Namun, akhirnya pengembang memiliki seperangkat alat yang dapat digunakan (dan digunakan kembali) untuk menguji berbagai versi aplikasi dan perangkat lunak di masa depan.

  • Pemrograman Lebih Fleksibel

Automation testing dapat mengubah otomatisasi testing pemrograman, menciptakan testing yang semakin kompleks yang dapat melihat kelemahan yang tidak jelas di aplikasi.

Kelemahan Automation Testing

Tidak mengherankan bahwa automation testing memiliki titik lemah juga. Tidak ada alat yang sempurna. Berikut adalah beberapa kelemahan dari automation testing yaitu :

  • Membutuhkan Waktu Setup yang Besar

Sebelum pengembang dapat menjalankan testing pada aplikasi yang baru dirancang, pertama-tama dia perlu mengambil waktu untuk membuat elemen testing otomatis. Dengan kata lain, automation testing membutuhkan banyak persiapan sebelumnya. Dalam jangka panjang, itu sepadan, tetapi untuk jangka pendek maka akan menimbulkan banyak pekerjaan dan bisa memakan waktu.

  • Membutuhkan Skill Khusus

Berkaitan dengan poin pertama, Kita membutuhkan orang-orang terampil untuk melakukan testing otomatisasi. Penulisan skrip uji otomatisasi membutuhkan programmer yang mahir.

  • Debugging

Apa yang terjadi jika skrip uji berisi kesalahan? Proses testing akan dirender secara invalid. Jika proses mekanisme melihat kesalahan itu sendiri penuh dengan kesalahan, hasilnya bisa menjadi bencana. Oleh karena itu, pengembang perlu memastikan bahwa skrip sepenuhnya bebas bug.

  • Isu Maintenance

Semakin banyak konten yang terdapat di skrip uji, semakin sulit untuk mempertahankan file testing. Tuntutan pemeliharaan yang lebih tinggi seharusnya tidak mengejutkan karena alat canggih membutuhkan lebih banyak pemeliharaan secara umum.

Perbandingan Manual vs. Automation Testing

Jika kita telah melihat bahwa automation testing memiliki kelebihan dan kekurangan. Sekarang mari kita melangkah lebih jauh dengan membandingkannya dengan testing manual dan melihat bagaimana perbandingannya.

  • Faktor Waktu

Testing otomatis membutuhkan lebih sedikit waktu pemrosesan daripada testing manual.

  • Random Testing

Juga disebut “testing eksploratif,” itu diizinkan dalam testing manual, bukan dalam otomatisasi.

  • Biaya Start-up

Testing otomatis menuntut investasi yang lebih tinggi, tetapi return on the investment (ROI) lebih tinggi dalam jangka panjang. Testing manual lebih murah, tetapi nilainya tidak setinggi automation testing.

  • Perubahan UI

Perubahan pada user interface (UI) memerlukan modifikasi pada skrip testing otomatisasi, sedangkan testing manual berfungsi dengan baik bahkan dengan efek perubahan UI yang kecil.

  • Keterlibatan

Karena automation testing menggunakan tools tambahan dalam proses testing, maka akan menghasilkan tingkat akurasi yang baik karena tidak terjadi kebosanan dalam proses testing yang berulang. Pengulangan testing manual berisiko membosankan penguji, sehingga meningkatkan kemungkinan kesalahan.

  • Framework

Automation testing menggunakan Selenium dan kerangka kerja otomatisasi testing lainnya seperti Datadrive, Hibrid, dan keyword. Testing manual tidak menggunakan kerangka kerja.

  • Faktor Manusia

Manusia bukan bagian dari persamaan testing otomatisasi, sehingga tidak memiliki cara untuk memastikan apakah system bersifat user friendly atau apakah pelanggan puas atau tidak. Testing manual mencakup elemen pengamatan manusia, sehingga penguji mendapatkan gagasan yang lebih baik tentang bagaimana sistem yang user friendly.

  • Skill atau Pengetahuan Pemrograman

Automation testing membutuhkan pengetahuan pemrograman, sedangkan testing manual tidak.

  • Waktu Terbaik untuk Digunakan

Automation testing berfungsi sangat baik ketika ada sejumlah besar tes fungsional yang dapat diulang, serta untuk situasi yang berhubungan dengan testing beban, testing kinerja, dan testing regresi. Testing manual lebih cocok untuk testing ad hoc, exploratory, dan kegunaan.


Wahyu Saputra S.Kom