Proses pengujian (testing) dalam pengembangan proyek secara umum mencakup beberapa tahapan yang dirancang untuk memastikan produk memenuhi kebutuhan, berfungsi dengan benar, dan bebas dari bug. Berikut adalah urutan proses pengujian dari awal hingga akhir:
1. Perencanaan Pengujian (Test Planning)
Tahap pertama adalah membuat rencana pengujian secara menyeluruh. Tim QA merencanakan pendekatan pengujian, menentukan cakupan, menetapkan tujuan pengujian, memilih alat atau teknologi yang dibutuhkan, serta mengalokasikan sumber daya. Di sini juga diputuskan jenis pengujian yang akan dilakukan (misalnya, fungsional, non-fungsional, unit testing, dll.) dan jadwal pengujian.
2. Analisis Kebutuhan Pengujian (Requirements Analysis)
Pada tahap ini, tim QA meninjau dokumen spesifikasi atau kebutuhan proyek untuk memahami apa saja yang perlu diuji dan bagaimana produk diharapkan berfungsi. Dari analisis ini, tim QA membuat daftar fitur dan elemen yang perlu diuji serta mengidentifikasi skenario pengujian penting yang relevan.
3. Desain Kasus Uji (Test Case Design)
Berdasarkan hasil analisis kebutuhan, tim QA menyusun test cases atau skenario pengujian. Kasus uji ini mencakup langkah-langkah spesifik, kondisi awal, masukan yang diperlukan, dan hasil yang diharapkan. Kasus uji dibuat dengan tujuan untuk mencakup semua skenario potensial dan mengidentifikasi potensi bug pada fitur tertentu.
4. Pembuatan Lingkungan Pengujian (Test Environment Setup)
Lingkungan pengujian disiapkan agar sesuai dengan kondisi produksi atau penggunaan sesungguhnya. Ini termasuk menginstal perangkat lunak, database, jaringan, atau konfigurasi yang diperlukan. Dalam beberapa kasus, tim juga membuat data uji (test data) untuk kebutuhan pengujian. Lingkungan pengujian harus siap dan stabil sebelum pengujian dimulai untuk menghindari gangguan saat eksekusi.
5. Eksekusi Pengujian (Test Execution)
Pada tahap ini, tester menjalankan setiap test case yang telah dirancang, satu per satu. Hasilnya dicatat: apakah test case tersebut lolos (pass) atau gagal (fail). Jika ada kegagalan, tester mendokumentasikan detail bug atau masalah yang ditemukan dan membuat laporan bug untuk diteruskan ke tim pengembangan.
6. Pelaporan Bug (Bug Reporting)
Setiap bug atau masalah yang ditemukan selama pengujian dicatat dalam laporan bug, yang biasanya dibuat menggunakan alat khusus (misalnya, Jira, Bugzilla, atau Trello). Laporan ini mencakup deskripsi bug, langkah-langkah untuk mereplikasi bug, hasil yang diharapkan, dan hasil aktual. Tim pengembang menggunakan laporan ini untuk memperbaiki bug.
7. Pengujian Ulang dan Verifikasi Perbaikan (Re-testing & Verification)
Setelah tim pengembang memperbaiki bug, tester melakukan re-testing untuk memverifikasi bahwa bug telah diperbaiki dan fungsi berjalan sesuai yang diharapkan. Pengujian ulang juga bisa mencakup regression testing untuk memastikan bahwa perbaikan bug tidak menyebabkan masalah baru atau memengaruhi fungsi lain dari sistem.
8. Pengujian Akseptansi (Acceptance Testing)
Setelah semua bug diperbaiki dan sistem stabil, dilakukan pengujian akseptansi, yang biasanya merupakan tahap akhir sebelum peluncuran produk. Pengujian ini bisa berupa User Acceptance Testing (UAT) atau Beta Testing di mana pengguna atau klien melakukan pengujian untuk memastikan bahwa produk sesuai dengan kebutuhan mereka. Jika produk lolos dari tahap ini, berarti produk dianggap siap untuk dirilis.
9. Penutupan Pengujian (Test Closure)
Pada tahap penutupan, tim QA melakukan tinjauan untuk mengevaluasi keberhasilan pengujian, termasuk mencatat hasil akhir, menganalisis statistik bug, dan mereview performa tim QA. Semua dokumentasi pengujian, seperti test cases, laporan bug, dan laporan hasil pengujian, dirapikan dan disimpan untuk kebutuhan di masa depan.
10. Pelaporan Pengujian dan Pembelajaran (Testing Report & Lessons Learned)
Sebagai langkah terakhir, tim QA menyusun laporan akhir pengujian yang merangkum proses, hasil, serta bug yang ditemukan dan diperbaiki. Selain itu, tim juga mendiskusikan pembelajaran yang diperoleh dari proses pengujian. Langkah ini membantu untuk mengoptimalkan proses pengujian di proyek-proyek berikutnya.
Setiap tahap ini saling berhubungan dan memastikan bahwa produk yang dihasilkan berkualitas tinggi, stabil, dan sesuai kebutuhan pengguna atau klien.
Sekian informasi kali ini, semoga bermanfaat
Thanks & have a nice day
Source: