Box

advertisement
#3
PAC133
PENGUJIAN PERANGKAT LUNAK
Nurdin Bahtiar, MT
PENGUJIAN BLACK-BOX
Pengujian black-box berfokus pada persyaratan fungsional
perangkat lunak.
Pengujian black-box bukan alternatif lain dari white-box, tetapi
mrpkn pendekatan komplementer yg kemungkinan besar mampu
mengungkap kelas kesalahan daripada metode white-box.
Pengujian ini berusaha mengungkap kesalahan dalam kategori:





Fungsi-fungsi yg tidak benar atau hilang
Kesalahan interface
Kesalahan dalam struktur data atau akses database eksternal
Kesalahan kinerja
Inisialisasi dan kesalahan terminasi
PENGUJIAN BLACK-BOX
(cont)
Pengujian black-box menguji beberapa aspek dasar suatu sistem
dengan sedikit memperlihatkan struktur logika internal perangkat
lunak tersebut.
Beberapa teknik pengujian black-box di antaranya:




Metode Pengujian Graph-Based
Partisi Ekivalensi
Analisis Nilai Batas
Pengujian Perbandingan
Metode Pengujian Graph-Based
Langkah pertama dalam pengujian black-box adalah memahami
objek yg yg dimodel di dalam perangkat lunak dan hubungannya.
Kemudian menentukan sederetan pengujian yg membuktikan bahwa
“semua objek memiliki hubungan yg diharapkan satu dgn yg lain”.
Simpul merepresentasikan suatu
objek (seperti modul atau
koleksi statemen).
Link merepresentasikan
hubungan antar objek.
Node weight menggambarkan
properti simpul (atribut).
Link weight menggambarkan
beberapa karakteristik link.
Metode Pengujian Graph-Based
Contoh sederhana
cont
Partisi Ekivalensi
Merupakan teknik pengujian yg membagi domain input dari suatu
program ke dalam kelas data dari mana test case dapat dilakukan.
Kelas ekivalensi merepresentasikan serangkaian keadaan valid atau
invalid untuk kondisi input. Kondisi input dapat berupa harga
numeris, rentan harga, serangkaian harga khusus, atau kondisi
boolean.
 Bila kondisi input suatu range, satu kelas ekivalensi valid dan dua
invalid ditentukan.
 Bila kondisi input suatu harga khusus, satu kelas ekivalensi valid dan
dua invalid ditentukan.
 Bila kondisi input anggota suatu himpunan, satu kelas ekivalensi
valid dan satu invalid ditentukan.
 Bila kondisi input boolean, satu kelas ekivalensi valid dan satu
invalid ditentukan.
Analisis Nilai Batas
Teknik pengujian Boundary Value Analysis (BVA) ini lebih mengarah
pada pemilihan test case pada “edge” dari kelas. Test case yg
dilakukan berfokus pada domain output.
 Bila kondisi input suatu range a dan b, test case didisain persis di
atas dan di bawah a dan b secara bersesuaian.
 Bila kondisi input suatu harga khusus, nilai yg tepat di atas dan di
bawah minimum juga harus diuji.
 Mengaplikasikan dua pedoman di atas ke kondisi output, output
harus menghasilkan jumlah minimum (dan maksimum) dari entri
tabel yg diijinkan.
 Bila kondisi input suatu batasan, test case didisain menggunakan
struktur pada batasannya.
Pengujian Perbandingan
Ada banyak situasi (seperti avionik pesawat udara, kontrol sumber
tenaga nuklir) reliabilitas perangkat lunak sangat kritis. Sehingga
hardware dan software redundan sering dikembangkan untuk
meminimalkan kemungkinan kesalahan.
 Tim RPL terpisah mengembangkan versi-versi independen dari
suatu aplikasi dgn menggunakan spesifikasi yg sama
 Setiap versi diuji dengan data uji yg sama untuk memastikan
bahwa semua versi memberikan output yg identik
 Semua versi dieksekusi secara paralel dengan perbandingan real
time hasil untuk memastikan konsistensi
 Pengujian black-box ini disebut juga Pengujian Back-to-Back.
PENGUJIAN UNTUK APLIKASI DAN
LINGKUNGAN KHUSUS
Saat perangkat lunak komputer menjadi semakin kompleks,
kebutuhan akan pendekatan pengujian khusus juga makin
berkembang.
Metode pengujian white-box dan black-box dapat diaplikasikan pada
semua lingkungan, arsitektur, dan aplikasi, tetapi kadang-kadang
dalam pengujian diperlukan pedoman dan pendekatan yg unik.
Beberapa pengujian yg terkait di antaranya:
 Pengujian GUI (Graphical User Interfaces)
 Pengujian Arsitektur Client / Server
 Pengujian Dokumentasi dan Fasilitas Help
 Pengujian Sistem Real-Time
Pengujian GUI
Karena GUI modern memiliki bentuk dan cita rasa yg sama, maka
dapat dilakukan sederetan pengujian standar.
Untuk window:
 Apakah window yg aktif disorot secara tepat?
 Apakah window akan menutup secara tepat?
Untuk menu pull-down dan operasi mouse:
 Apakah operasi menu pull-down bekerja secara tepat?
 Apakah operasi mouse dikenali dgn baik pada seluruh konteks
interaktif?
Entry data:
 Apakah mode grafik dari entry data bekerja dgn baik?
 Apakah data invalid dikenali dgn baik?
 Apakah pesan input data sangat pintar?
Pengujian Arsitektur Client /
Server
Beberapa hal yg menjadi bahan pertimbangan pengujian ini di
antaranya:
 Sifat terdistribusi dari lingkungan client / server
 Masalah kinerja yg berhubungan dgn pemrosesan transaksi
 Kehadiran potensial dari sejumlah platform perangkat keras yg
berbeda
 Kompleksitas komunikasi jaringan
 Kebutuhan akan layanan client multiple dari suatu database
terpusat
 Persyaratan koordinasi yg dibebankan pada server.
Pengujian Dokumentasi dan
Fasilitas Help
Dokumentasi merupakan elemen ketiga dari konfigurasi perangkat
lunak. Sering terjadi pengguna mengikuti tuntunan dokumentasi
tetapi hasilnya tidak sesuai dgn yg diprediksi oleh dokumen.
Karenanya pengujian dokumentasi harus menjadi suatu bagian yg
berarti dari setiap rencana pengujian perangkat lunak.
Pengujian ini dapat didekati dalam dua fase:
 Kajan teknis formal, yg menguji kejelasan editorial dokumen
 Live test, menggunakan dokumentasi dalam kaitannya dgn
penggunaan program aktual. Pengujiannya dapat menggunakan
teknik yg analog dng berbagai metode pengujian black-box.
Pengujian Sistem Real-Time
Banyak aplikasi real-time yg bersifat asinkron dan tergantung waktu.
Pengujian ini mempertimbangkan penanganan kejadian (yakni
pemrosesan interupsi), timing data, dan paralelisme tugas-tugas
(proses) yg menangani data.
Strategi empat langkah yg dapat digunakan:
 Pengujian tugas
 Pengujian tingkah laku
 Pengujian antar-tugas
 Pengujian sistem
Latihan
Tentukan jenis-jenis pengujian black-box yang dapat dilakukan
untuk berbagai test case yang mungkin pada aplikasi berbasis
Windows berikut:
1. Notepad
2. Calculator
3. Disk Defragmenter
End of File
Download