2.1.2 Pemilihan Tipe Pengujian Berdasarkan Tujuan dan Risiko

Dalam proses Quality Assurance (QA), pengujian bukan sekadar aktivitas rutin yang dilakukan berdasarkan daftar checklist. Pengujian adalah strategi krusial dalam menjaga kualitas produk, meminimalkan risiko kegagalan, dan melindungi reputasi bisnis. Oleh karena itu, pemilihan jenis pengujian perlu disesuaikan berdasarkan kondisi dan kebutuhan spesifik proyek perangkat lunak. Beberapa faktor penting yang harus dipertimbangkan dalam menentukan tipe pengujian yang paling sesuai antara lain:

      Tujuan bisnis dari fitur atau produk

      Tingkat kompleksitas sistem

      Waktu dan sumber daya yang tersedia

      Dampak jika terjadi kegagalan (risiko)

      Skala pengguna atau trafik sistem

Sebagai QA Engineer, penting untuk menerapkan pendekatan pengujian yang fleksibel dan tepat sasaran, menyesuaikan jenis dan fokus pengujian dengan konteks proyek. Sebagai contoh, pada proyek internal dengan risiko kegagalan rendah, pengujian keamanan secara mendalam mungkin tidak perlu dilakukan. Sebaliknya, dalam pengembangan sistem transaksi keuangan dengan banyak pengguna aktif, pengujian keamanan dan regresi menjadi hal yang sangat krusial dan harus diutamakan.


Memahami “Tujuan” dalam QA

Menentukan tujuan pengujian adalah langkah penting agar proses QA fokus dan terarah. Tujuan ini menjelaskan apa yang ingin dicapai pada setiap tahap pengujian, baik dari aspek fungsionalitas, performa, keamanan, maupun pengalaman pengguna. Beberapa contoh tujuan pengujian yang sering diterapkan dalam industri antara lain:

      Memastikan fitur berfungsi sesuai dengan kebutuhan atau requirement.

      Memeriksa fitur lama agar tetap berjalan dengan baik setelah ada pembaruan.

      Menilai ketahanan dan kecepatan sistem saat digunakan dalam kondisi beban tinggi.

      Melindungi data sensitif agar tidak terjadi kebocoran atau penyalahgunaan.

      Meningkatkan pengalaman pengguna dengan memastikan aplikasi mudah dipakai dan intuitif.

Dari tujuan tersebut, QA bisa memilih tipe pengujian yang sesuai, misalnya:

      Jika tujuannya adalah memvalidasi fitur baru, maka QA bisa memilih Functional Testing.

      Jika tujuannya adalah mengukur performa sistem, maka QA bisa memilih Performance Testing.

Risiko: Faktor Kritis dalam Pemilihan Pengujian

Risiko merupakan kemungkinan terjadinya masalah atau kegagalan dalam sistem yang dapat menimbulkan dampak negatif pada kualitas produk atau pengalaman pengguna. Dalam konteks Quality Assurance, memahami dan mengelola risiko sangat penting untuk mengarahkan fokus pengujian ke area yang paling rentan. Risiko dalam QA umumnya dapat dikategorikan ke dalam beberapa jenis berikut:

      Risiko teknis, yaitu kemungkinan sistem menjadi tidak stabil, sering mengalami crash, atau berjalan lambat.

      Risiko bisnis, yaitu potensi kehilangan uang atau berkurangnya jumlah pengguna.

      Risiko keamanan, yaitu kemungkinan terjadinya kebocoran data atau penyalahgunaan sistem oleh pihak yang tidak bertanggung jawab.

      Risiko pengalaman pengguna atau user experience (UX), yaitu ketika pengguna merasa pengalaman menggunakan aplikasi terganggu atau membingungkan.

Salah satu metode populer dalam QA adalah Risk-Based Testing (RBT), yaitu pendekatan pengujian yang memusatkan perhatian pada bagian-bagian sistem yang memiliki risiko tinggi dan sangat penting. Dengan cara ini, tim QA bisa bekerja lebih efisien dengan mengalokasikan waktu dan tenaga ke area yang paling berpengaruh terhadap kualitas produk.

Adapun contoh implementasi RBT (Risk-Based Testing), yaitu sebagai berikut.

      Fitur transaksi keuangan diuji dengan kombinasi functional, regression, dan security testing.

      Halaman profil pengguna diuji lebih ringan, cukup dengan functional dan exploratory testing.

      Fitur dashboard admin diuji lebih mendalam, jika menyangkut data sensitif.

Proses Strategis: Bagaimana Menentukan Tipe Pengujian?

Seorang QA yang efektif tidak hanya melaksanakan pengujian secara teknis, tetapi juga harus mampu mengambil keputusan strategis mengenai pendekatan pengujian yang paling tepat. Sebelum memulai proses testing, QA perlu menjawab beberapa pertanyaan penting agar pengujian yang dilakukan menjadi relevan, efisien, dan memberikan dampak positif terhadap kualitas produk. Beberapa pertanyaan kunci yang sebaiknya dijawab antara lain:

  1. Apa tujuan utama dari pengujian kali ini?
  2. Apa konsekuensi jika fitur ini gagal?
  3. Siapa pengguna dari fitur ini dan berapa banyak yang terdampak?
  4. Seberapa sering fitur ini digunakan dalam alur utama aplikasi?
  5. Apakah fitur sudah pernah diuji sebelumnya?

Setelah menjawab pertanyaan tersebut, QA dapat menentukan beberapa hal berikut.

      Jenis pengujian yang paling tepat

      Tingkat kedalaman pengujian

      Prioritas dan urgensi pengujian

 

Sebelum melakukan pengujian, QA perlu menyadari bahwa tidak semua fitur memiliki tingkat risiko yang sama. Oleh sebab itu, pengujian harus diprioritaskan pada bagian kritis seperti fitur yang sering digunakan, berkaitan dengan transaksi, atau memproses data penting agar efisien dan tepat sasaran.

Tabel berikut menunjukkan contoh situasi umum dalam pengembangan perangkat lunak beserta jenis pengujian yang tepat untuk meminimalkan risiko:

Tujuan

Risiko Tertinggi

Testing yang Dipilih

Rilis fitur baru

Bug menyebabkan kerusakan pada checkout

Functional dan Regression

Persiapan promo besar

Sistem crash akibat lonjakan trafik

Performance Testing

Update tampilan UI

Tampilan tidak konsisten atau membingungkan

Exploratory dan Usability Testing

Tabel 2.1.2 Menentukan Tipe Pengujian Berdasarkan Tujuan dan Risiko

 

Selain itu, jenis pengujian yang dipilih juga bisa disesuaikan dengan fase pengembangan produk, misalnya:

      Tahap awal (minimum viable product): Fokus pada functional testing dan exploratory testing.

      Tahap (scale-up): Pengujian yang utama adalah regression testing dan performance testing.

      Tahap matang dan stabil: Lebih banyak menggunakan otomatisasi pengujian, pemantauan (monitoring), dan pengujian keamanan (security testing) 

Jika pengujian dilakukan secara terlalu luas tanpa fokus, hal ini dapat menghabiskan waktu dan biaya, bahkan menghambat pengembangan oleh tim developer. Oleh karena itu, kerjasama yang baik antara QA, developer, dan product owner sangat penting untuk menyepakati prioritas pengujian berdasarkan tujuan bisnis dan risiko produk. Dengan pendekatan ini, pengujian dapat dilakukan secara efektif, efisien, dan memberikan dampak positif langsung terhadap kualitas produk.

Studi Kasus: Memilih Tipe Pengujian Berdasarkan Tujuan dan Risiko

Kasus 1: Aplikasi Edukasi Online (Tujuan: Kecepatan & UX)

Sebuah startup edtech meluncurkan platform pembelajaran daring. Tim ingin segera merilis versi pertama (MVP) ke publik dalam waktu 2 minggu.

Keputusan QA:

      Fokus pada Functional Testing untuk fitur utama, seperti login, daftar kelas, dan pemutaran video.

      Melakukan Exploratory Testing untuk mengejar edge-case yang tidak tertulis di requirement.

      Tidak melakukan Security Testing mendalam karena saat ini sistem belum memuat data pengguna penting.

Alasan:
Risiko terbesar adalah kegagalan fitur dasar yang menghambat proses belajar pengguna. Pengujian keamanan akan difokuskan pada fase berikutnya.

Hasil:
Versi MVP berhasil dirilis, pengguna bisa mengakses kelas, dan QA menyiapkan regression test untuk versi mendatang.

Kasus 2: Aplikasi Fintech (Tujuan: Stabilitas & Keamanan)

Sebuah aplikasi e-wallet ingin meluncurkan fitur baru, yaitu Transfer Instan Antar Bank yang melibatkan dana dan data sensitif.

Keputusan QA:

      Melakukan Functional Testing secara lengkap pada semua skenario transfer (sukses, gagal, nominal minimal/maksimal).

      Menjalankan Regression Testing pada seluruh modul keuangan untuk memastikan fitur lama seperti top-up dan bayar tagihan tetap berjalan baik.

      Melakukan Security Testing termasuk validasi enkripsi dan manajemen sesi.

      Menjalankan Performance Testing untuk simulasi ribuan transaksi secara bersamaan.

Alasan:
Risiko utama adalah kerugian finansial dan kerusakan reputasi jika sistem gagal atau data bocor.

Hasil:
QA berhasil menemukan bug kritis pada sistem rollback transaksi yang sebelumnya tidak terdeteksi oleh developer. Pengujian ini menyelamatkan sistem dari potensi bug di lingkungan produksi.

Kasus 3: Marketplace E-Commerce (Tujuan: Ketersediaan saat Event)

Platform e-commerce akan mengadakan Flash Sale 11.11 yang diperkirakan dikunjungi lebih dari 500.000 pengguna dalam 1 jam.

Keputusan QA:

      Menjalankan Load & Stress Testing untuk melihat batas performa sistem.

      Membuat Automated Regression Test agar semua fitur utama seperti login, search, add to cart, dan checkout diuji otomatis sebelum deploy.

      Memantau hasil melalui monitoring tools real-time di lingkungan staging.

Alasan:
Risiko utama adalah website down saat puncak trafik, yang dapat menyebabkan kerugian jutaan rupiah per menit.

Hasil:
Tim QA menemukan hambatan pada proses checkout ketika jumlah pengguna yang mengakses lebih dari 30.000. Tim developer sempat melakukan optimasi sebelum hari H dan sistem berjalan stabil saat event berlangsung.

Kesimpulan Studi Kasus

Dari ketiga studi kasus di atas, dapat kita simpulkan bahwa:

      Tujuan bisnis yang berbeda memerlukan strategi pengujian yang berbeda.

      Risiko tertinggi harus menjadi fokus utama dalam memilih jenis pengujian.

      Pengujian bukan hanya aktivitas teknis, tetapi juga fungsi strategis yang mendukung keberhasilan produk.

 

 

 

 

 

Last modified: Tuesday, 2 September 2025, 11:12 PM