Pengujian Kotak Hitam Pengujian Struktural Pengujian Jalur

2.7.1.1 Pengujian Kotak Hitam

Pengujian fungsional atau pengujian kotak hitam black-box testing merupakan pendekatan pengujian yang ujinya diturunkan dari spesifikasi program atau komponen. Sistem merupakan kotak hitam yang perilakunya hanya dapat ditentukan dengan mempelajari input dan output yang berkaitan. Nama lain untuk cara ini adalah pengujian fungsional karena penguji hanya berkepentingan dengan fungsionalitas dan bukan implementasi perangkat lunak. Summervilee, 2003, hal:87 Gambar 2.6 Pengujian Kotak Hitam Gambar 2.6 mengilustrasikan model sistem yang diasumsikan pada pengujian kotak hitam. Pendekatan ini dapat juga diterapkan pada sistem yang disusun sebagai fungsi atau objek. Jika output bukan merupakan yang diramalkan berarti uji tersebut telah berhasil mendeteksi masalah dengan perangkat lunak tersebut.

2.7.1.2 Pengujian Struktural

Pengujian struktural merupakan pendekatan terhadap pengujian yang diturunkan dari pengetahuan struktur dan implementasi perangkat lunak. Pendekatan ini kadang- kadang disebut pengujian ‘kotak putih white-box testing’, pengujian kotak kaca atau pengujian kotak jernih untuk membedakannya dari pengujian kotak hitam. Summerville, 2003 hal:91 Pengujian struktural biasanya diterapkan untuk unit program yang relatif kecil. Sebagaimana ditunjukkan oleh namanya, penguji dapat menganalisis kode dan menggunakan pengetahuan mengenai struktur komponen untuk menurunkan data uji. Analisis kode dapat digunakan untuk menemukan berapa kasus uji yang dibutuhkan untuk menjamin bahwa semua statement pada program paling tidak diuji satu kali pada proses pengujian.

2.7.1.3 Pengujian Jalur

Pengujian jalur path testing adalah strategi pengujian struktural yang bertujuan untuk melatih setiap jalur eksekusi independent melalui komponen atau program. Jika setiap jalur independen dieksekusi, maka semua statement pada komponen harus dieksekusi paling tidak satu kali. Lebih jauh lagi, semua statement kondisional diuji untuk kasus true dan false. Summerville, 2003 hal:93

2.7.2 Pengujian Integrasi