Tabel keputusan membantu ketika perilaku bergantung pada beberapa kondisi secara bersamaan. QA mengatur kombinasi secara sistematis dan melihat aturan mana yang tercakup dan mana yang belum teruji.
Ketika teknik ini sangat berguna
- →Beberapa kondisi masukan secara bersama-sama menentukan hasilnya.
- →Logika tekstual menjadi sulit untuk diikuti secara detail.
- →Kombinasi yang saling bertentangan atau jarang terjadi di sepanjang jalan bahagia.
- →Anggota tim mungkin menafsirkan aturan yang sama secara berbeda.
Membangun tabel keputusan
- →Buat daftar kondisi yang mempengaruhi perilaku.
- →Identifikasi kemungkinan statusnya: ya/tidak, valid/tidak valid, peran A/peran B, dan seterusnya.
- →Catat tindakan yang diharapkan untuk setiap kombinasi yang bermakna.
- →Hapus kombinasi yang tidak mungkin atau tidak relevan agar tabel tetap terikat dengan perilaku sebenarnya.
Contoh
Pertimbangkan pembayaran yang diatur oleh tiga faktor: ketersediaan stok, pengguna yang diautentikasi, dan pembayaran yang dikonfirmasi. Tabel keputusan menjelaskan kapan pesanan dapat dibuat, kapan login diperlukan, dan kapan operasi harus diblokir dengan lebih jelas daripada deskripsi prosa yang rumit.
Kesalahan umum
- →Menyertakan setiap keadaan yang mungkin terjadi tanpa mempertimbangkan relevansinya.
- →Gagal membedakan kombinasi mustahil dari kombinasi nyata.
- →Menggambarkan tindakan sistem secara samar-samar tanpa ekspektasi yang konkrit.
- →Membuat tabel yang menarik tanpa mengubah aturannya menjadi pemeriksaan yang dapat dieksekusi.
Tabel keputusan mengubah aturan bisnis yang tidak jelas menjadi peta keputusan yang transparan. Mereka sangat berharga dalam bidang fintech, e-commerce, kontrol akses, diskon, rencana harga, dan sistem alur kerja.
Contoh tabel keputusan: diskon keanggotaan
Aturan fiktif: berikan diskon 10% hanya jika pelanggan adalah anggota DAN subtotal pesanan setidaknya 100 satuan mata uang bulat. Selain itu, tidak ada diskon. Subtotal telah divalidasi, pajak dan pengiriman tidak dihitung, dan contoh menggunakan jumlah bulat agar tidak bergantung pada kebijakan pembulatan yang belum ditentukan.
Aturan Anggota? Subtotal >= 100? Contoh subtotal Diskon Jumlah setelah diskon
R1 Tidak Tidak 80 0% 80
R2 Tidak Ya 120 0% 120
R3 Ya Tidak 80 0% 80
R4 Ya Ya 120 10% 108Dua kondisi Boolean independen menghasilkan empat kombinasi; keempatnya layak berdasarkan spesifikasi ini. Tabel tersebut memperjelas aturan AND: keanggotaan saja tidak cukup, dan subtotal yang besar saja tidak cukup. Jika suatu kondisi tidak mungkin terjadi dalam sistem nyata, catat alasannya sebelum menghapus aturannya.
Ubah aturan menjadi kasus uji
Kasus DT-R4
Prasyarat: anggota yang terautentikasi; subtotal 120; tidak ada promosi lain.
Tindakan: minta total pesanan.
Hasil yang diharapkan: tingkat diskon 10%; nilai diskon 12; jumlah setelah diskon 108.
Kasus kontrol DT-R2: subtotal sama, bukan anggota; diskon 0; jumlah 120.Semua aturan pengambilan keputusan tercakup tidak berarti batasan numerik tercakup. Tambahkan subtotal anggota 99, 100 dan 101: tarif yang diharapkan adalah 0%, 10% dan 10%. Jika jumlah pasti yang harus dibayarkan dapat berupa pecahan, pertama-tama tentukan presisi dan pembulatan mata uang. Jauhkan cek tersebut dari apakah diskon berlaku.
Latihan: ubah AND menjadi OR
Misalkan aturan berubah menjadi “anggota OR subtotal setidaknya 100”. Baris mana yang berubah? R2 dan R3 sekarang menerima 10%; R1 masih tidak menerima apa pun dan R4 masih menerima 10%. Jumlah yang diharapkan untuk contoh yang ditampilkan menjadi 80, 108, 72 dan 108. Hitung ulang tabel sebelum memperbarui pengujian sehingga asumsi lama tidak luput dari perhatian.