Politeknik Telkom Rekayasa Perangkat Lunak
Pengujian Perangkat Lunak 125
- Membangun perangkat lunak yang tangguh yang dirancang untuk menguji
dirinya sendiri. Perangkat lunak dirancang dengan teknik antibugging, di mana perangkat lunak dapat mendiagnosis jenis-jenis kesalahan tertentu
dan mengakomodasi pengujian otomatis dan pengujian regresi
- Menggunakan tinjauan formal yang efektif sebagai filter sebelum
pengujian. kajian teknis formal dapat mengungkap kesalahan seefektif pengujian sehingga dapat mengurangi jumlah kerja pengujian
- Mengadakan tinjauan formal teknis untuk menilai strategi dan kasus uji.
Kajian teknis formal dapat mengungkap inkonsistensi, penghapusan, dan kesalahan seketika dalam pendekatan pengujian
- Membangun pendekatan yang meningkat secara berkelanjutan untuk
proses pengujian. Strategi pengujian harus terukur. Metrik yang terkumpul selama pengujian harus digunakan sebagai bagian dari
pendekatan kontrol proses statistikal bagi pengujian perangkat lunak
7.5 Strategi Pengujian Perangkat Lunak
Proses pengujian perangkat lunak dapat digambarkan sebagai berikut:
Gambar 7.5 Strategi Pengujian Perangkat Lunak
Spiral di atas menggambarkan bagaimana rekayasa sistem membangun sebuah perangkat lunak dimulai dari penentuan kebutuhan perangkat lunak, kemudian
spiral bergerak ke dalam proses dilanjutkan ke dalam bentuk rancangan, dan akhirnya ke pengkodean di pusat spiral. Strategi pengujian serupa dengan hal
tersebut, namun bergerak dimulai dari pusat menuju keluar spiral. Dimulai dengan unit testing di pusat spiral di mana masing-masing modulunit dari
perangkat lunak yang diimplementasikan dalam source code menjadi sasaran pengujian. Kemudian bergerak keluar spiral, dilakukan integration testing
dengan fokus pengujian adalah desain dan konstruksi arsitektur perangkat
Politeknik Telkom Rekayasa Perangkat Lunak
126 Pengujian Perangkat Lunak
lunak. Bergerak lagi keluar, dilakukan validation testing dengan sasaran pengujian adalah kesesuaian dengan kebutuhan perangkat lunak yang telah
ditentukan di awal. Terakhir pada lingkaran terluar spiral sampai pada system testing, di mana perangkat lunak dan keseluruhan elemen sistem diuji.
7.5.1 Unit Testing
Berfokus pada verifikasi unit terkecil dari perangkat lunak. Dengan menggunakan gambaran desain prosedural, jalur kontrol yang penting diuji
untuk mengungkap kesalahan pada modul tersebut. Pengujian ini biasanya berorientasi white-box, dan dapat dilakukan secara paralel untuk modul
bertingkat.
Gambar 7.6 Unit Testing
Interface modul diuji untuk memastikan bahwa informasi secara tepat masuk dan keluar dari program yang diuji. Struktur data lokal diuji untuk memastikan
bahwa data yang tersimpan secara temporal tetap terjaga integritasnya selama keseluruhan algoritma dieksekusi. Kondisi batas diuji untuk memastikan
bahwa modul beroperasi dengan tepat pada batas yang ditentukan untuk membatasi pemrosesan.
Pengujian terhadap jalur eksekusi merupakan tugas penting selama unit testing. Kasus uji harus dirancang untuk mengungkap kesalahan yang berkaitan
dengan kesalahan komputasi, kesalahan komparasi, dan aliran kontrol yang tidak tepat. Basis path testing dan loop testing merupakan teknik yang efektif
untuk mengungkap kesalahan tersebut. Prosedur unit testing biasanya melibatkan adanya driver dan stub. Driver
adalah suatu program utama yang menerima data kasus uji, melewatkan data