Saat ini metode pengujian perangkat lunak sudah banyak berkembang seiring semakin beragamnya platform dan tujuan perangkat lunak. Metode-tata cara pengujian tersebut memperlihatkan pendekatan yang sistematik dalam menguji perangkat lunak. Di samping itu, sistem-metode tersebut mampu menawarkan mekanisme yang mampu menolong dalam memastikan kelengkapan pengujian dan menawarkan kemungkinan tertinggi dalam menguak kesalahan pada perangkat lunak.
Program rekayasa perangkat lunak dapat diuji dengan satu atau dua cara, yaitu :
- Dengan mengenali fungsi yang ditentukan untuk dilakukan oleh sebuah produk RPL, pengujian mampu dilakukan untuk menunjukkan bahwa masing-masing fungsi berjalan sepenuhnya dan pada waktu yang serupa mencari kesalahan pada setiap fungsi. Pendekatan pengujian ini umumdisebut dengan istilah pengujian black-box atau black-box testing.
- Dengan mengetahui kerja internal produk RPL, maka pengujian mampu dijalankan dalam memutuskan bahwa semua operasi internal melakukan pekerjaan sesuai dengan spesifikasi dan segala unsur interna sudah diamati dengan memadai. Pendekatan pengujian ini biasa disebut dengan istilah pengujian white-box atau white-box testing.
Pengujian Black-box
Pengujian black-box yakni pengujian berkaitan dengan pengujian yang dikerjakan pada interface perangkat lunak. Walaupun dirancang untuk menguak kesalahan, pengujian black-box dipakai untuk menunjukkan bahwa fungsi-fungsi yang ada pada perangkat lunak mampu beroperasi, bahwa inputan diterima dengan baik dan output dihasilkan secara sempurna, serta integritas informasi eksternal dipelihara dengan baik. Black-box testing menguji beberapa faktor dasar suatu metode dengan mengamati sedikit struktur akal internal pada perangkat lunak.
Pengujian White-box
Pengujian white-box yaitu pengujian yang didasari pada observasi yang teliti mengenai detail prosedural. Jalur-jaur logika yang melalui perangkat lunak diuji dengan menunjukkan kasus uji atau skenario pengujian yang menguji serangkaian kondisi atau perulangan (loop) tertentu. Status program mampu diuji pada aneka macam titik untuk memilih apakah status yang dibutuhkan dengan status sebenarnya.
Dari paparan mengenai pengujian black-box dan white-box di atas sebelumnya, sekilas mampu disimpulkan bahwa pengujian white-box yang sangat teliti akan mampu membawa perangkat lunak kepada program yang benar 100%. Yang dibutuhkan adlaah memilih semua jalur akal, berbagi masalah uji untuk mengujinya dan memeriksa kesannya, ialah menimbulkan kasus uji untuk menguji nalar program secara lebih mendalam. Akan tetapi sesuai dengan prinsip pengujian, pengujian secara mendalam akan mengakibatkan dilema sumber daya atau logistik. Bahkan bagi program dalam kecil-kecilan, nalar mampu dibangkitkan dengan jumlah jalur nalar yang besar.
Pengujjian white-box dilarang dianggap tidak praktis. Sejumlah jalur nalar yang penting dapat dipiih dan digunakan. Struktur-struktur data yang penting mampu diperiksa kevalidalitasnya. Atribut pengujian black-box dan white-box bisa digabungkan secara serempak dalam memperlihatkan penekatan yang memvalidasi antarmuka dan secara selektif menjamin bahwa proses internal perangkat lunak telah benar.
Black-box Testing
Pengujian ini berfokus pada persyaratan fungsional perangkat lunak. Black-box memungkinkan pelaku RPL memperoleh serangkaian kondisi input yang menyanggupi syarat fungsional suatu perangkat lunak.
Black-box testing akan berupaya dalam menemukan kesalahan dengan kategori selaku berikut ini :
- Fungsi-fungsi yang rusak atau salah
- Kesalahan antarmuka perangkat lunak
- Kesalahan kinerja
- Kesalahan inisialisasi ataupun terminasi
- Kesalahan struktur data atau susukan basis data
Pengujian black-box lebih condong untuk dilaksanakan pada tahap final dan dituntut untuk menjawab pertanyaan-pertanyaan seperti berikut :
- Apakah sistem sungguh sensitif kepada nilai input tertentu?
- Bagaimana validitas fungsional diuji
- Apa imbas variasi tertentu dari data kepada operasi metode?
- Berapa kecepatan dan volume data yang mampu ditangani tata cara?
- Bagaimana batas-batas suatu data diisolasi?
Melalui pengujian black-box ini, penguji musti mendesain serangkaian perkara uji atau skenario pengujian yang dapat memberi tahu mengani ada atau tidaknya kesalahan dan dapat meminimalkan jumlah kasus uji atau skenario uji yang mesti dirancang untuk meraih pengujian yang benar.
Teknik Pengujian Black-box
Contoh penguian black-box diantaranya yaitu sebagai berikut :
Boundary Value Analysis
Merupakan teknik pengujian yang membagi domain-domain input dari suatu acara ke dalam keompok-golongan data, lalu melakukan pengujian hanya pada batasan domain input tersebut.
Source : testbytes.net |
Graph Based Testing Method
Teknik pengujian black-box ini melibatkan gambar grafik yang mengilustrasikan hubungan antara penyebab (input) dan imbas (output), yang mengakibatkan terjadinya hasil. Pengujian ini memakai variasi output dan input yang berlainan.
Source : testbytes.net |
Decision Table Testing
Dalam beberapa masalah, variasi input menjadi sungguh rumit untuk melacak beberapa kemungkinan. Situasi rumit mirip ini bergantung pada tabel keputusan, alasannya menunjukkan penguji persepsi teratur ihwal kombinasi input dan output yang diharapkan. Teknik ini identik dengan teknik pengujian berbasis grafik; perbedaan terutama adalah menggunakan tabel alih-alih diagram atau grafik.
Source : testbytes.net |
Equivalence Partitioning
Teknik pengujian black-box ini banyak dipakai untuk menulis perkara uji. Ini mampu berguna dalam meminimalisir serangkaian input yang mungkin menjadi input yang lebih kecil tetapi efektif. Ini dikerjakan melalui pembagian input selaku kelas, dan setiap kelas diberi nilai. Ini diterapkan saat kebutuhan untuk pengujian lengkap muncul dan untuk menolak redundansi input.
Source : testbytes.net |
State Transition Testing
Teknik ini lazimnya memikirkan keadaan, keluaran, dan input dari suatu tata cara selama kurun tertentu. Berdasarkan pada jenis perangkat lunak yang diuji, ia menyelidiki pergantian perilaku sebuah tata cara dalam keadaan tertentu atau kondisi lain sambil mempertahankan input yang serupa. State transitition testng teknik ini dibuat dengan menyelidiki urutan transisi dan keadaan atau insiden di antara input.
White-box Testing
White-box testing yakni sistem desain perkara uji yang memakai struktur kendali rancangan prosedural untuk menemukan kasus uji. Dengan memakai sistem pengujian white box, pelaku RPL dapat melaksanakan kasus uji yang merujuk pada :
- Memberikan jaminan bahwa seluruh jalur independen pada suatu modul telah digunakan paling tidak satu kali.
- Menggunakan struktur data internal untuk menjamin validitasnya.
- Mengeksekusi semua loop pada batasan dan pada batas operasionalnya.
- Menggunakan semua keputusan logis pada sisi true dan false.
Sifat cacat internal pada perangkat lunak sangat mungkin didapatkan dengan menggunakan pengujian white-box sedangkan black-box tidak mungkin mampu menemukannya. Alasan inilah yang mendasari mengapa pengujian white-box dilakukan.
Teknik White-box Testing
Teknik pengujian white-box testing diantaranya yakni
Basis Path Testing
Metode ini memungkinkan perancang kasus uji untuk mengukur kompleksitas logis dari rancangan prosedural dan menggunakannya selaku aliran untuk menetapkan sekumpulan jalur hukuman dasar (basis set). Kasus uji yang dikerjakan untuk menggunakan basis set tersebut dijamin untuk menggunakan setiap statement dalam acara paling tidak sekali selama pengujian. Metode ini memakai notasi flow graph yang menggambarkan fatwa kendali akal yang menggunakan notasi yang ditunjukkan pada gambar di bawah ini:
Condition Testing
Definisinya yaitu sebuah sistem disain test case yang menyelidiki kondisi nalar yang terdapat pada modul program.
Source : stackexchange.com |
Data Flow Testing
Data Flow Testing yakni seni manajemen spesifik pengujian perangkat lunak yang berfokus pada variabel data dan nilainya. Itu menggunakan grafik ajaran kendali. Ketika tiba ke kategorisasi, pengujian pemikiran data akan dapat dianggap sebagai jenis pengujian kotak putih dan jenis pengujian struktural. Itu menciptakan cek di titik penerimaan data oleh variabel dan titik penggunaannya. Hal ini dilakukan untuk menutup jalur pengujian dan celah pengujian cabang.
Data flow testing (semanticscholar.org) |
Loop Testing
Loop testing yaitu suatu teknik white box testing yang berfokus pada validitas konstruksi loop (insiden berulang) secara eksklusif.
EmoticonEmoticon