Skip to main content

Pengujian Perangkat Lunak (BlackBox dan WhiteBox)


BLACK BOX

1. 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
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.

2. 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.

3. Macam-macam Black Box

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.


1. Pengertian White Box

White Box Testing adalah salah satu cara untuk menguji suatu aplikasi atau software dengan cara melihat modul untuk dapat meneliti dan menganalisa kode dari program yang di buat ada yang salah atau tidak. Kalau modul yang telah dan sudah di hasilkan berupa output yang tidak sesuai dengan yang di harapkan maka akan di compile ulang dan di cek kembali kode-kode tersebut hingga mencapai sesuai denganyang di harapkan.
Kasus yang sering menggunakan White Box testing akan di uji dengan beberapa tahapan yaitu
1.      Pengujian seluruh keputusan yang menggunakan logikal.
  1. Pengujian keseluruh loop yang ada sesuai batasan-batasannya.
  2. Pengujian pada struktur data yang sifatnya internal dan yang terjamin validitasnya.

2. Kelebihan Yang Terdapat Di White Box Testing

1.      Kesalahan Logika
Menggunakan sintax ‘if’ dan sintax pengulangan. Dan langkah selanjutnya metode White Box testing ini akan mencari dan mendeteksi segala kondisi yang di percaya tidak sesuai dan mencari kapan suatu proses perulangan di akhiri.
2.      Ketidaksesuaian Asumsi
Menampilkan dan memonitori beberapa asumsi yang di yakini tidak sesuai dengan yang di harapkan atau yang akan di wujudkan, untuk selanjutnya akan di analisa kembalai dan kemudian di perbaiki.
3.      Kesalahan Pengetikan
Mendeteksi dan mencarian bahasa-bahasa pemograman yang di anggap bersifat case sensitif.

3. Kelemahan White Box Testing

Pada perangkat lunak yang jenisnya besar, metode White Box testing ini dianggap boros karena melibatkan banyak sumberdaya untuk melakukannya.

4. Pengujian White Box Testing

Pengujian ke White Box testing adalah menguji yang di dasarkan kepada pengecekkan ke dalam detail rancangan, penggunaan yang di lakukan struktur control dari suatu desain pemograman untuk dapat membagi pengujian ke beberapa kasus pengujian. Dan di dapat bahwasanya White Box testing menggungakan petunjuk untuk menghasilkan program yang di harapkan dan efisien.
Metode pengujian pada White Box testing ini sering di lakukan untuk
1.      Memberikan dan membuat suatu jaminan bahwa seluruh jalur-jalur yang independen hanya menggunakan modul minimal satu kali.
  1. Keputusan yang sifatnya logis dapat di gunakan di semua kondisi true (benar) atau false (salah).
  2. Mengeksekusi seluruh perulangan yang ada ke pada batas nilai dan operasional di setiap situasi dan kondisi.
  3. Syarat yang di lakukan dalam menjalankan strategi White Box testing
  4. Mendefinisikan tentang seluruh alur-alur logika yang ada.
  5. Membangun dan membuat suatu kasus yang akan di gunakan untuk tahap pengujian.
  6. Hasil pengujian yang telah di dapatkan akan di lakukan eveluasi kembali.
  7. Pengujian yang di lakukan haruslah secara menyeluruh.


Comments