Pengujian Black-Box

advertisement
Pengujian Black-Box
Black-Box
Bukan pengujian alternatif dari teknik
White-Box, melainkan sebagai pelengkap
yang mungkin dapat mengungkapkan kelas
kesalahan yang belum ditemukan oleh
teknik White-Box
Black-Box
Usaha mengungkapkan kesalahan
1. Fungsi-fungsi yang tidak benar atau hilang
2. Kasalahan Interface
3. Kesalahan struktur data atau akses
database eksternal
4. Kesalahan kinerja
5. Inisialisasi dan terminasi
Black-Box
Pengujian didesain untuk menjawab pertanyaan
• Bagaimana validitas fungsional diuji?
• Kelas input apa yang akan membuat test case
menjadi baik
• Apakah sistem sangat sensitif terhadap harga
input tertentu?
• Bagaimana batasan dari suatu data diisolasi
• Kecepatan dan volume data apa yang dapat
ditolerir oleh sistem
• Apa pengaruh kombinasi data terhadap operasi
sistem
Equivalence Partitioning






Memisahkan domain input menjadi kelompok-kelompok data
untuk menghasilkan kasus tes
Equivalence class : keadaan valid atau invalid untuk kondisi
input
Jika kondisi input adalah sebuah range, maka didefinisikan satu
equivalence class valid dan dua equivalence class invalid
Jika kondisi input adalah sebuah nilai, maka didefinisikan satu
equivalence class valid dan dua equivalence class invalid
Jika kondisi input adalah sebuah himpunan, maka didefinisikan
satu equivalence class valid dan satu equivalence class invalid
Jika kondisi input adalah sebuah Boolean, maka didefinisikan
satu equivalence class valid dan satu equivalence class invalid

Contoh : aplikasi perbankan. User men-dial bank
menggunakan PC, dengan password (enam digit)
diikuti perintah untuk berbagai fungsi perbankan. Data
yang diterima perangkat lunak di bank berbentuk :
kode are – blank atau tiga digit angka
prefix – tiga digit angka tidak berawalan 0 atau 1
suffix – empat digit angka
password – enam digit nilai alfanumerik
perintah – “check”, ”deposit”, ”bayar tagihan”, dll
Kondisi input untuk setiap data tersebut :
kode are: kondisi input, Boolean – kode area kosong atau terisi
kondisi input, range – nilai antara 100 sampai 999
prefix
: kondisi input, range – nilai > 200
suffix
: kondisi input, nilai – panjang empat digit
password : kondisi input, Boolean – password kosong atau terisi
kondisi input, nilai – string enam karakter
perintah: kondisi input, himpunan – mengandung perintah yang
telah ditetapkan
Boundary Value Analysis
Jika sebuah input mempunyai range antara nilai a dan b,
maka kasus tes harus dirancang dengan nilai a dan b
serta diatas dan dibawah a dan b.
 Jika sebuah input mempunyai jumlah tertentu, maka
kasus tes harus dirancang dengan jumlah minimum dan
maksimum. Nilai-nilai dibawah dan diatas minimum dan
maksimum juga dites.
 Kedua panduan diatas juga diterapkan untuk kondisi
output. Kasus tes harus dirancang untuk menghasilkan
output pada nilai minimum dan maksimum
 Jika struktur data juga mempunyai batasan (misal sebuah
array mempunyai jumlah maksimal 100 item), maka
harus dirancang sebuah kasus tes untuk mengetes
struktur data tersebut pada nilai batasnya

Comparison Testing



Untuk sebuah perangkat lunak yang memiliki
banyak versi  beberapa implementasi
untuk spesifikasi yang sama
Setiap versi dites dengan data tes yang sama
untuk memastikan bahwa semuanya
menghasilkan output yang sama
Jika output dari setiap versi sama,
diasumsikan bahwa semua implementasi
benar. Jika output berbeda, setiap aplikasi
diperiksa untuk memastikan mana versi yang
menyebabkan terjadinya perbedaan
Pengujian Aplikasi dan Lingkungan
Khusus
Pengujian GUI
 Pengujian Arsitektur Client/Server
 Pengujian Dokumentasi dan Fasilitas Help
 Pengujian Sistem Real Time

Download