A. Pengertian Black
Box Testing
Black Box testing merupakan salah satu bentuk pengujian
untuk menguji suatu software tertentu. Bentuk lain yang mirip seperti Black Box
Testing adalah White Box Testing. Untuk pengujian Black Box Testing lebih
memfokuskan pada hasil yang
dituju tanpa memikirkan proses internal yang terjadi di dalam software
tersebut. Seperti: pemrograman, design, maintenance, dan lain sebagainnya.
Black Box Testing adalah suatu pengujian yang dilakukan hanya untuk
mengamati hasil dari eksekusi pada software tersebut. Pengamatan hasil ini melalui data uji dan
memeriksa fungsional dari perangkat lunak itu sendiri. Jadi dapat dianalogikan
seperti kita melihat suatu kotak hitam. Dimana kita hanya bisa melihat
penampilan pada luarnya saja, tanpa mengetahui apa yang ada dibalik kotak hitam tersebut. Pengujian
black box testing ini juga mengevaluasi hanya pada tampilan luarnya saja
(interface), fungsionalnya,
dan tidak melihat atau mengetahui apa yang sesungguhnya terjadi di dalam proses
detilnya. Namun hanya mengetahui proses input dan output-nya
saja.
B. Fungsi Black Box Testing
Berikut adalah fungsi-fungsi dari proses pengujian Black Box
Testing:
1. Menemukan fungsi-fungsi yang tidak
benar atau hilang di dalam suatu software.
2. Mencari kesalahan interface yang
terjadi saat software dijalankan.
3. Untuk mengetahui kesalahan dalam
struktur data atau akses database eksternal di dalam suatu aplikasi.
4. Menguji kinerja dari software
tersebut.
5. Menginisialisasikan dan mencari
kesalahan dari terminasi software itu sendiri.
A. Macam-macam
Model Black Box Testing:
1. Boundary
Value testing
·
Pengujian yang melatih nilai-nilai batas.
·
Banyak kesalahan terjadi pada kesalahan masukan.
·
BVA mengijinkan untuk menyeleksi kasus uji yang menguji
batasan nilai input.
·
BVA merupakan pelengkap dari equivalence class
testing.
Langkah-Langkah:
1.
Identifikasi kelas ekuivalen
2.
Identifikasi batasan untuk tiap kelas ekuivalen
3.
Buat uji kasus dengan memilih satu titik pada nilai bawah
batasan dan satu titik pada niali atas batasan.
2.
Use Case Testing
·
Mendefinisikan transaksi pada proses yang ada pada suatu
sistem (requirment definition).
·
Use case biasanya dibuat oleh developer dan untuk developer,
tetapi informasi pada use case sangat berguna bagi tester.
Fungsi Use
Case
1.
Menggambarkan functional requirments dari sebuah sistem pada
sisi pengguna.
2.
Dapat digunakan untuk proses identifikasi kebutuhan
pengguna.
3.
Menyediakan dasar untuk komponen internal sistem, struktur,
& keterhubungan.
4.
Menyediakan dasar dalam membangun test case dalam sistem dan
acceptance level.
Langkah-Langkah:
1. Mempertimbangkan resiko dari transaksi
dan jenis-jenisnya pada saat pengujian.
2. Mulai dengan data yang normal dalam
transaksi, pilih transaksi yang vital bagi sistem.
3. Pastikan setiap extension pada use case
telah diuji, ujilah dengan kondisi- kondisi yang ekstrim.
3. Comparison Testing
·
Pada beberapa aplikasi reliability dari
sebuah perangkat lunak sangat penting.
·
Redundansi perangkat keras dan perangkat lunak mungkin
digunakan untuk meminimalisir kesalahan (error).
·
Untuk redundansi perangkat lunak, gunakan tim yang terpisah
untuk mengembangkan setiap versi perangkat lunak yang independen.
·
Uji setiap versi dengan data yang sama untuk memastikan
semua versi menghasilkan keluaran yang sama.
·
Jalankan semua versi dengan paralel dan perbandingan
keluaran secara real-time.
4. Performance Testing
·
Mengevaluasi kemampuan program untuk beroperasi dengan benar
dipandang dari sisi acuan kebutuhan. misalnya: alirandata, ukuran pemakaian
memori, kecepatan eksekusi, dll.
·
Untuk mencari tahu beban kerja atau kondisi konfigurasi
program.
·
Spesifikasi mengenai performansi didefinisikan pada saat
tahap spesifikasi atau desain.
·
Dapat digunakan untuk menguji batasan lingkungan program.
5. Endurance Testing
·
Endurance testing melibatkan kasus uji yang diulangulang
dengan jumlah tertentu dengan tujuan untuk mengevaluasi program apakah sesuai
dengan spesifikasi kebutuhan.
Contoh:
·
Untuk menguji keakuratan operasi matematika (floating point,
rounding off, dll).
·
Input/outputs (jika menggunakan framework untuk
memvalidasi bagian input dan output).
·
Spesifikasi kebutuhan pengujian didefinisikan pada tahap
spesifikasi kebutuhan atau desain.
Tidak ada komentar:
Posting Komentar