Equivalence Partitioning & Boundary Value Analysis dengan Contoh Sehari-hari
Dua teknik pengujian paling dasar yang membuat test case-mu efisien, dijelaskan dengan contoh form pendaftaran.
Tim Padepokan QA · Senin, 28 September 2026 · 3 menit baca
Jawaban singkat: Equivalence Partitioning mengelompokkan input yang diperlakukan sama lalu menguji satu perwakilan tiap kelompok. Boundary Value Analysis menguji nilai tepat di batas dan di sekitarnya. Untuk aturan usia 17–60, nilai uji minimalnya 16, 17, 18, 59, 60, dan 61.
Bayangkan kamu diminta menguji kolom usia pada form pendaftaran dengan aturan: usia yang diterima 17 sampai 60 tahun. Apakah kamu harus mencoba semua angka dari 0 sampai 100?
Tentu tidak. Di sinilah dua teknik klasik membantu: Equivalence Partitioning (EP) dan Boundary Value Analysis (BVA).
Equivalence Partitioning
Idenya: kelompokkan input yang diperlakukan sama oleh sistem, lalu uji satu perwakilan dari tiap kelompok.
Untuk aturan usia 17–60, kelompoknya adalah:
- Tidak valid (terlalu kecil): di bawah 17, misalnya 10
- Valid: 17 sampai 60, misalnya 35
- Tidak valid (terlalu besar): di atas 60, misalnya 75
Jangan lupa kelompok yang sering terlewat:
- Kosong
- Bukan angka, misalnya
dua puluh - Angka desimal, misalnya
25,5 - Angka negatif, misalnya
-5
Dengan EP, puluhan kemungkinan input menjadi beberapa test case yang masing-masing punya alasan jelas.
Boundary Value Analysis
Bug paling sering bersembunyi di batas. Developer bisa saja salah menulis > padahal seharusnya >=. BVA menguji nilai tepat di batas dan di sekitarnya.
Untuk aturan 17–60:
- 16 (tepat di bawah batas bawah): harus ditolak
- 17 (batas bawah): harus diterima
- 18 (tepat di atas batas bawah): harus diterima
- 59 (tepat di bawah batas atas): harus diterima
- 60 (batas atas): harus diterima
- 61 (tepat di atas batas atas): harus ditolak
Contoh kedua: minimal belanja
Aturan: gratis ongkir untuk belanja minimal Rp100.000.
- EP: di bawah Rp100.000 (tidak dapat), Rp100.000 ke atas (dapat).
- BVA: Rp99.999, Rp100.000, Rp100.001.
Perhatikan kata minimal. Apakah Rp100.000 tepat termasuk? Menurut requirement, ya. Kalau aplikasi tidak memberi gratis ongkir untuk Rp100.000, itu bug. Pertanyaan-pertanyaan seperti ini yang membuat QA berharga.
Saat requirement ambigu, jangan menebak. Tanyakan, lalu tuliskan jawabannya di test case.
Menggabungkan keduanya
Dalam praktik, kamu memakai keduanya sekaligus:
- Tentukan kelompok dengan EP.
- Cari batas antar kelompok.
- Uji nilai di batas dengan BVA.
- Tambahkan skenario input aneh (kosong, huruf, simbol).
Hasilnya: test case yang sedikit tapi tajam.
Kalau ingin mempelajarinya dengan latihan bertahap, materi Equivalence Partitioning & Boundary Value Analysis dibahas khusus di kelas gratis Belajar QA dari Nol.
Teknik ini sering ditanyakan saat interview
"Bagaimana kamu menguji kolom usia 17–60?" adalah pertanyaan klasik interview QA. Jawaban yang menyebut EP dan BVA beserta nilai-nilainya langsung menunjukkan bahwa kamu berpikir sistematis. Pertanyaan lainnya ada di 15 Pertanyaan Interview QA.
Pertanyaan Umum
Kapan memakai Equivalence Partitioning?
Saat input punya rentang atau kategori yang diperlakukan sama oleh sistem, misalnya rentang usia, jumlah belanja, atau jenis akun. Teknik ini mengurangi jumlah test case tanpa mengurangi cakupan.
Kenapa bug sering muncul di batas nilai?
Karena kesalahan kecil dalam kode, seperti memakai tanda lebih dari padahal seharusnya lebih dari atau sama dengan, hanya terlihat tepat di nilai batas.
Apakah EP dan BVA ditanyakan saat interview QA?
Ya, sangat sering. Pertanyaan seperti cara menguji kolom usia dengan rentang tertentu adalah cara interviewer melihat apakah kamu berpikir sistematis.
Dari teknik ke dokumen
Setelah menemukan kelompok dan nilai batas, langkah berikutnya adalah menuangkannya ke test case. Biasanya setiap nilai uji menjadi satu test case dengan expected result yang jelas: diterima atau ditolak, beserta pesan yang seharusnya muncul. Formatnya dibahas di Cara Menulis Test Case yang Baik.
:::cta
Lihat contoh test case yang lengkap
QA Starter Kit berisi template test case dan 41 contoh pengisian untuk satu fitur utuh ("Bayar Pajak Daerah" di aplikasi e-commerce), ditambah contoh bug report, Regression Checklist, Test Plan, dan Test Summary Report. Harga Rp99.000.