Black Box testing yang berbahasa indonesia pengujian kotak hitam adalah salah satu metode pengujian terhadap suatu perangkat lunak. Metode pengujian sendiri adalah cara atau teknik untuk dapat menguji perangkat lunak, mempunyai mekanisme untuk menentukan data uji yang dapat menguji perangkat lunak secara lengkap serta memiliki kemungkinan yang tinggi untuk menemukan kesalahan pada perangkat lunak.
Pengujian perangkat lunak sangat perlu untuk dilakukan guna mengevaluasi baik secara manual maupun otomatis untuk menguji apakah perangkat lunak yang diuji tersebut sudah memenuhi persyaratan atau belum, dan juga untuk menentukan perbedaan antara hasil yang diharapkan dengan hasil yang sebenarnya. Pada umumnya, perangkat lunak dapat diuji dengan menggunakan dua cara, yaitu:
Pengujian dengan menggunakan data uji untuk menguji semua elemen program (data internal, loop, keputusan dan juga jalur). Data uji dibangkitkan dengan mengetahui struktur internal atau source code dari perangkat lunak.
Pengujian dilakukan dengan cara mengeksekusi data uji dan juga mengecek apakah fungsional perangkat lunak dapat bekerja dengan baik. Data uji dapat ditemukan dari spesifikasi perangkat lunak.
Terdapat berbagai jenis metode dalam pengujian perangkat lunak yang memiliki cakupannya masing-masing. Beberapa jenis metode pengujian tersebut yaitu meliputi White Box testing, Grey Box testing, dan juga Black Box testing yang akan dibahas pada artikel kali ini.
Black Box testing adalah suatu pengujian perangkat lunak dari segi spesifikasi fungsional tanpa melalui pengujian kode atau sisi internal dari programnya. Artinya, hanya sisi fungsi, antarmuka atau interface, serta alurnya saja yang diuji tanpa menyentuh kode ataupun script dari perangkat lunak. Hal ini tentunya sangat berbeda dengan White Box testing yang menguji perangkat lunak dari sisi internalnya, termasuk dari kode-kode perintahnya. Sehingga Black Box sendiri bukanlah alternatif dari White Box, namun justru pelengkap untuk menemukan kesalahan pada perangkat lunak yang mungkin tidak dapat diketahui melalui pengujian White Box Testing.
Menurut Pressman Black Box Testing juga bisa disebut dengan pengujian perilaku, berfokus pada persyaratan fungsional dari perangkat lunak. Artinya, teknik pengujian kotak hitam atau black box testing ini memungkinkan kita untuk membuat beberapa kumpulan kondisi masukan yang sepenuhnya akan melakukan semua kebutuhan fungsional untuk program atau perangkat lunak.
Black box testing ini berfokus pada pengujian dari masing-masing spesifikasi fungsional perangkat lunak. Seorang tester dapat mendefinisikan kumpulan kondisi input serta melakukan pengetesan pada fungsional perangkat lunak menurut Mustaqbal pada tahun 2015. Dengan demikian, setiap input pada perangkat lunak dapat diperhatikan kinerjanya berdasarkan dengan fungsi yang ingin dicapai.
Metode Black Box Testing merupakan pengujian yang dilakukan untuk eksekusi melalui data uji serta memeriksa fungsional dari perangkat lunak. Pengamatan hasil ini melalui data uji dan juga fungsional yang didapat dari perangkat lunak itu sendiri. Sehingga pada pengujian black box testing ini, kita hanya mengevaluasi pada antarmuka atau juga tampilan luarnya saja (interface). Cukup dengan menguji proses input dan output-nya saja.
Lalu apa perbedaan dari Black Box testing dengan White Box dan juga Grey Box testing? Tentunya Black Box testing memiliki ciri unik yang dapat membedakannya dari jenis jenis pengujian lain. Syafitri (2015) mengemukakan bahwa ciri-ciri dari black box testing ini adalah diantaranya sebagai berikut:
- Black box testing berfokus pada kebutuhan fungsional pada software, berdasarkan pada spesifikasi kebutuhan dari software
- Black box testing bukanlah teknik alternatif dari white box testing. Lebih dari pada itu, ia merupakan pendekatan pelengkap dalam mencakup error dengan kelas yang berbeda dari metode white box testing
- Black box testing melakukan pengujian tanpa pengetahuan detail struktur internal dari sistem atau komponen yang akan dites. Juga bisa disebut sebagai behavioral testing, specification-based testing, input & output testing atau functional testing.
Pada black box testing, terdapat jenis teknik desain test yang dapat dipilih berdasarkan dengan tipe testing yang akan digunakan. Jenis-jenis dari desain pengujian tersebut di antaranya adalah sebagai berikut.
Equivalence Class Partitioning Equivalence Class Partitioning merupakan suatu teknik pengujian perangkat lunak atau Black Box testing yang berfungsi untuk membagi domain input ke dalam kelas data, dan dengan bantuan kelas data ini, kasus uji dapat diturunkan.
Boundary Value Analysis BVA adalah teknik pengujian Black Box testing yang digunakan untuk memeriksa kesalahan pada batas-batas domain input atau masukan. Penamaan tersebut berasal dari Boundary yang berarti batas suatu wilayah. Jadi, BVA terutama berfokus pada pengujian parameter input yang valid dan juga tidak valid untuk rentang komponen perangkat lunak tertentu.
State Transitions Testing State Transitions Testing adalah teknik pengujian Black Box testing dimana perubahan yang dibuat dalam kondisi input yang menyebabkan perubahan status atau perubahan output dalam Aplikasi dibawah Test (AUT). Pengujian ini dapat membantu menganalisis perilaku aplikasi untuk kondisi input yang berbeda.
Cause-Effect Graphing Cause-Effect Graphing adalah teknik Black Box testing yang secara grafis menggambarkan hubungan antara hasil yang diberikan dan juga semua faktor yang mempengaruhi hasil tersebut. Diagram ini juga dikenal sebagai diagram Ishikawa karena ditemukan oleh Kaoru Ishikawa atau diagram tulang ikan karena tampilannya yang sangat mirip dengan ikan.
Mustaqbal (2015) menyatakan bahwa black box testing berfokus pada spesifikasi fungsional dari suatu perangkat lunak, kumpulan kondisi input serta melakukan pengetesan pada fungsional program. Sehingga dapat disimpulkan Black Box Testing ini memiliki fungsi-fungsi diantaranya sebagai berikut.
- Menemukan fungsi-fungsi yang salah atau pun hilang di dalam suatu software
- Mencari kesalahan interface yang terjadi pada saat software tersebut dijalankan
- Untuk mengetahui kesalahan dalam struktur data atau akses database eksternal di dalam suatu aplikasi
- Menguji kinerja dari software tersebut
- Menginisialisasikan serta mencari kesalahan dari terminasi software itu sendiri
Selain itu, menurut Suryawan (2019) pengajuan Black Box juga ditujukan untuk dapat mengetahui kesalahan atau error dengan berdasarkan kategori kesalahannya. Kategori-kategori kesalahan dari Black Box testing diantaranya adalah sebagai berikut.
- Fungsi yang hilang atau tak benar/salah
- Error dari antar-muka/interface
- Error dari struktur data atau akses eksternal database
- Kesalahan/Error dari kinerja atau tingkah laku/perform
- Error dari inisialisasi dan terminal
Tentunya metode pengujian kotak hitam ini memiliki keunggulan dan juga kekurangan tertentu yang dapat menentukan sebaiknya kapan metode ini diterapkan pada situasi dan juga kondisi tertentu. Kelebihan dan juga kekurangan black box testing dapat diuraikan sebagai berikut.
Meskipun dalam pelaksanaannya testing kita dapat menguji keseluruhan dari fungsional perangkat lunak namun formal black box testing yang sebenarnya kita dapat memilih subset test yang secara efektif dan juga efisien dapat menentukan cacat. Dengan cara ini black box testing dapat membantu untuk memaksimalkan testing investment.
Ketika tester melakukan black box testing, tester tidak akan pernah yakin apakah perangkat lunak yang telah diuji tersebut telah benar-benar lolos dalam pengujian. Hal ini terjadi karena kemungkinan masih ada beberapa jalur eksekusi yang belum pernah diuji oleh user sebelumnya. Untuk menentukan cacat perangkat lunak menggunakan black box testing, tester seharusnya membuat setiap kemungkinan kombinasi dari data input baik yang valid maupun yang tidak valid.
Adapun langkah-langkah yang dilakukan dalam melakukan Black Box Testing adalah sebagai berikut.
Analisa kebutuhan dan spesifikasi Dilakukan untuk dapat memastikan persyaratan-persyaratan apa yang ingin dicapai ketika pengujian akan dilakukan, misalnya fungsi A harus mampu melaksanakan perintah B serta menghasilkan output C.
Pemilihan input Pemilihan input dilaksanakan untuk dapat memastikan seluruh input yang ada menerima pengujian, sehingga black box testing dapat menguji seluruh skenario input yang dapat terjadi pada suatu perangkat lunak. Misalnya, kita memilih input log in berupa form username dan juga password.
Pemilihan output Tester akan menentukan output seperti apa yang akan diharapkan dari perangkat lunak. Misalnya apakah output cetak harus dipastikan dapat mencetak laporan dari perangkat lunak tersebut dengan baik dan tanpa kendala.
Seleksi input Pada tahap ini, penguji akan menentukan test case atau skenario dari input yang telah terpilih. Skenario seperti apa yang akan dilakukan pada input ini? Misalnya apakah kita akan mencoba memasukan username yang salah dan juga melihat output yang terjadi.
Pengujian Berbagai skenario pengujian yang telah ditentukan melalui analisis kebutuhan, spesifikasi, pemilihan input, output, beserta test case seleksi input yang telah dilakukan dilaksanakan pada tahap ini.
Review hasil Pengujian yang telah dilaksanakan dievaluasi pelaksanaannya, sehingga dapat menghasilkan berbagai catatan dan juga dokumentasi mengenai bug, cacat, kesalahan, dan berbagai fungsi yang telah berjalan dengan sebagaimana mestinya.
Demikian lah artikel mengenai Pengertian black box testing, karakteristik, jenis dan juga fungsinya. Semoga dapat menambah informasi untuk para pembaca. Jika Saat ini anda tengah ingin memiliki sebuah website untuk pribadi,organisasi dan bahkan perusahaan anda. Anda dapat menghubungi kami IDMETAFORA dan juga dapat berkonsultasi di 0896 6423 0232 atau 0813 9399 3723 dan juga dapat mengunjungi kantor kami yang beralamat pada Jl. Damai No.36, Sleman, Yogyakarta. Sekian terima kasih!
Kesempatan lowongan magang terbaru di tahun 2024
Baca Selengkapnya..