Black Box Testing

Black-box Testing

Pengujian sistem merupakan pengujian program perangkat lunak yang lengkap dan terintegrasi. Perangkat lunak atau yang lebih sering dikenal dengan sebutan software hanyalah satuan elemen dari sistem berbasis komputer yang lebih besar. Biasanya, perangkat lunak dihubungkan dengan perangkat lunak dan perangkat keras lainnya.

Pengujian terhadap perangkat lunak dapat dibedakan menjadi dua yaitu Black Box Testing dan White Box Testing. Sebelumnya kita sudah membahas mengenai White Box Testing. Pembahasan kali ini adalah tentang Black Box Testing.

  • Black Box Testing

atau yang lebih sering dikenal dengan sebutan pengujian fungsional merupakan metode pengujian perangkat lunak yang digunakan untuk menguji perangkat lunak tanpa mengetahui struktur internal kode atau program. 

Dalam pengujian ini, tester menyadari apa yang harus dilakukan oleh program tetapi tidak memiliki pengetahuan tentang bagaimana melakukannya.

Pada Black Box Testing ini dilakukan pengujian yang didasarkan pada detail aplikasi seperti tampilan aplikasi, fungsi-fungsi yang ada pada aplikasi, dan kesesuaian alur fungsi dengan bisnis proses yang diinginkan oleh customer. Black-box testing ini lebih menguji ke tampilan luar (Interface) dari suatu aplikasi agar mudah digunakan oleh pengguna. Pengujian ini tidak melihat dan menguji source code program. Black-box testing bekerja dengan mengabaikan struktur kontrol sehingga perhatiannya hanya terfokus pada informasi domain.

Tes “Kotak Hitam atau Black Box” hanya terdiri dari meninjau fungsi-fungsi dari aplikasi, yaitu jika melakukan apa yang seharusnya, tidak peduli bagaimana melakukannya. Struktur dan fungsi internalnya tidak dipelajari. Dengan demikian penguji perlu mengetahui apa peran sistem itu, dan fungsinya, tetapi tidak tahu mekanisme internalnya. Dia memiliki profil “pengguna”.

Jadi metode ini bertujuan untuk memeriksa, setelah tahap akhir proyek, apakah perangkat lunak atau aplikasi berfungsi dengan baik, dan melayani penggunanya secara efisien. Biasanya, penguji mencari fungsi yang hilang atau salah; antarmuka, kinerja, inisialisasi program dan kesalahan keluar; struktur data atau kesalahan akses basis data eksternal.

Untuk ini, mereka menyiapkan skenario berdasarkan jalur pengguna yang berbeda yang dapat diikuti pada sistem yang akan diuji. Semua fungsi harus diperhitungkan, agar semuanya telah diuji pada akhir operasi. Setiap tes mengikuti skenario, memeriksa untuk setiap fungsi, jika input yang valid diterima, yang tidak valid ditolak, dan tentu saja, setiap waktu, jika output atau hasil yang diharapkan memang diperoleh. Itu adalah metode “coba-coba”.

Jadi untuk melakukan Black Box Testing seseorang tidak harus memiliki kemampuan coding atau TDD coding, Tes ini bisa dilakukan oleh pengguna, tim marketing bahkan user sebagai kuisionernya.

Teknik-teknik Black-box Testing:

  • Equivalence Partitioning
    Cara kerja teknik ini adalah dengan melakukan partition atau pembagian menjadi beberapa partisi dari input data.
  • Boundary Value Analysis
    Teknik ini lebih fokus kepada boundary, adakah error dari luar atau sisi dalam software, minimum, maupun maksimum nilai dari error yang didapat.
  • Fuzzing
    Fuzz merupakan teknik untuk mencari bug atau gangguan dari software dengan menggunakan injeksi data yang terbilang cacat ataupun sesi semi-otomatis.
  • Cause-Effect Graph
    Ini adalah teknik testing dimana menggunakan graphic sebagai acuannya. Dimana dalam grafik ini menggambarkan relasi antara efek dan penyebab dari error tersebut.
  • Orthogonal Array Testing
    Dapat digunakan jika input domain yang relatif terbilang kecil ukurannya, tetapi cukup berat untuk digunakan dalam skala besar.
  • All Pair Testing
    Dalam teknik ini, semua pasangan dari test case di desain sedemikian rupa agar dapat dieksekusi semua kemungkinan kombinasi diskrit dari seluruh pasangan berdasar input parameternya. Tujuannya testing ini adalah memiliki pasangan test case yang mencakup semua pasangan tersebut.
  • State Transition
    Testing ini berguna untuk melakukan pengetesan terhadap kondisi dari mesin dan navigasi dari UI dalam bentuk grafik.

 

Keuntungan dari Black-box Testing :

  • Penguji tidak perlu memiliki pengetahuan tentang bahasa pemrograman tertentu
  • Pengujian yang dilakukan berdasarkan sudut pandang user agar dapat mengungkapkan konsistensi atau ambiguitas dalam spesifikasi.
  • Programmer dan tester memiliki ketergantungan satu sama lain
  • Efisien untuk segmen kode besar
  • Akses kode tidak diperlukan
  • Pemisahan antara perspektif pengguna dan pengembang

Kekurangan Black-box Testing :

  • Uji kasus sulit di desain tanpa spesifikasi yang jelas
  • Kemungkinan memiliki pengulangan tes yang sudah dilakukan oleh programmer
  • Beberapa bagian back end tidak diuji sama sekali.
  • Cakupan terbatas karena hanya sebagian kecil dari skenario pengujian yang dilakukan
  • Pengujian tidak efisien karena keberuntungan tester dari pengetahuan tentang perangkat lunak internal

Manfaat dari metode Black-box Testing ini adalah sebagai berikut:

  • Kesederhanaan

Tes ini mudah dilakukan, karena seseorang berfokus pada input dan output. Penguji tidak perlu tahu bagaimana sistem bekerja secara internal, atau kode sumbernya, yang tidak dapat diakses. Dengan demikian, metode ini juga tidak mengganggu.

  • Kejelasan

Waktu persiapan tes ini sangat singkat, karena sedikit pengetahuan tentang sistem yang dibutuhkan. Membuat dan menguji skenario membutuhkan sedikit waktu, karena ia mengikuti jalur pengguna, yang relatif sedikit, tergantung pada ukuran sistem.

  • Ketidakberpihakan 

Di sini mengikuti sudut pandang “pengguna” dan bukan sudut pandang “pengembang”. Hasil pengujian netral: sistem berfungsi, atau tidak. Tidak ada kemungkinan kontestasi, seperti penggunaan satu proses daripada yang lain, tergantung pada pendapat pengembang.

 

Sumber:

  1. https://adalah.co.id/white-box-testing/
  2. https://www.dosenpendidikan.co.id/white-box-testing/
  3. https://student-activity.binus.ac.id/himsisfo/2016/10/perbedaan-white-box-testing-dan-black-box-testing/
  4. https://socs.binus.ac.id/2020/07/02/teknik-dalam-white-box-dan-black-box-testing/#:~:text=White%20Box%20Testing%20adalah%20salah,ada%20yang%20salah%20atau%20tidak.
  5. https://www.konsepkoding.com/2020/07/pengertian-perbedaan-black-box-white-grey-box.html
  6. https://medium.com/skyshidigital/pengujian-sistem-52940ee98c77

5 Comments

Leave Comment

error

Enjoy this blog? Please spread the word :)

Facebook
YouTube
Instagram