Automated Testing adalah suatu proses pengujian yang dilakukan dengan menggunakan perangkat lunak khusus untuk membantu tester dalam melakukan test secara otomatis. Perangkat lunak ini bertujuan untuk meningkatkan efisiensi dan mengurangi kesalahan manusia.
Perangkat lunak khusus yang dimaksud dapat berupa tool, program, atau aplikasi yang dipilih sesuai dengan kebutuhan dan beberapa kelebihannya.
Contoh perangkat lunak yang digunakan dalam Automated Testing adalah sebagai berikut :
- Selenium (Web)
- Coded UI (Windows)
- QTP (Web & Windows)
- SoapUI (API)
Daftar isi
Perbedaan manual testing dan automated testing
Dalam software development, proses pengujian dilakukan pada semua tahapan. Pengujian dilakukan untuk menemukan bug, error, atau defect dan memastikan aplikasi dapat berjalan sesuai dengan spesifikasi yang diinginkan.
Mengenai pengujian ini, ada 2 macam pengujian yaitu manual testing dan automated testing.
Perbedaan keduanya adalah sebagai berikut:
1. Manual testing
Manual Testing merupakan proses manual untuk melakukan pengujian pada aplikasi. Dalam manual testing, tester melakukan eksekusi test case secara manual (melalui GUI). Proses melalui GUI ini dimulai dari input data, pengecekan hasil yang diharapkan, dan pengecekan output data yang dihasilkan oleh aplikasi tersebut.
Manual testing seringkali membutuhkan tester yang ahli, oleh karena itu tester harus dapat mengetahui seberapa jauh aplikasi memenuhi atau melanggar kebutuhan perancang dan pengguna.
2. Automated testing
Automated Testing adalah proses pemeriksaan software dengan menggunakan program komputer. Program ini dibuat untuk memeriksa apakah program-program lain bekerja dan beroperasi dengan benar.
Selain itu, Automated Testing juga mampu melakukan pengujian yang sangat rumit dan mendetail, serta mampu melakukan pengujian yang dilakukan berulang-ulang tanpa harus menggunakan banyak tester.
Kenapa perlu menerapkan automated testing
Ada beberapa alasan mengapa automated testing sangat diperlukan untuk mendukung proses pengembangan software, di antaranya yaitu:
- Memudahkan dalam melakukan pengecekan baru (regression testing) setelah ada perubahan pada kode program. Kita tinggal menjalankan lagi test case untuk mengecek apakah hasilnya sudah benar atau belum.
- Membuat test case yang akan diulang berkali-kali dan yang memerlukan waktu yang cukup lama untuk dilakukan. misalnya membandingkan 2 gambar, atau melakukan benchmark performa suatu fungsi dengan fungsi lainnya, dan sebagainya.
- Mempermudah proses debugging karena di proses debug kita hanya tinggal mencari error di mana saja, sedangkan dengan automated testing kita tinggal menjalankan test case dan error akan otomatis ditampilkan.
Kelebihan automated testing
Dengan menggunakan automated testing, maka akan memberikan beberapa keuntungan yaitu:
- Mampu menyediakan testing yang lebih cepat dan efisien
- Mampu mengurangi waktu pengujian
- Dapat meningkatkan jumlah pengujian yang dilakukan
- Dapat meminimalkan kesalahan human error
- Dapat menghemat biaya
- Dapat mempresentasikan informasi secara visual
Langkah-langkah dalam automated testing
- Identifikasi scenario yang cocok untuk dilakukan automated testing
- Menentukan jenis test case yang akan dijalankan
- Membuat test plan atau test strategy
- Membuat test script atau test procedure
- Ekseskusi automated testing dan laporan hasilnya
Software testing merupakan tahap dalam proses pengembangan perangkat lunak yang bertujuan untuk menemukan kesalahan yang terjadi pada perangkat lunak itu.
Software testing ini dilakukan dengan cara menggunakan teknik tertentu dan mengikuti suatu prosedur tertentu, sehingga hasilnya dapat digunakan untuk keperluan pengambilan keputusan atau penilaian terhadap kualitas perangkat lunak.
Software testing dibutuhkan agar dapat melihat suatu software atau perangkat lunak sesuai dengan spesifikasi yang di desain oleh pengembang nya, sehingga software tersebut dapat berfungsi dengan baik dan memenuhi harapan pengguna akhir. Selain itu software testing juga membantu untuk mendeteksi masalah dan memecahkannya.