Pada dasarnya, pengujian merupakan satu dalam proses rekayasa perangkat lunak yang dapat dianggap sebagai hal yang destruktif daripada konstruktif.
1.Prinsip pengujian Meliputi beberapa pengujian sebagai berikut: a. Semua pengujian harus dapat ditelusuri sampai kepersyaratan. b. Pengujian harus direncanakan lama sebelum pengujian itu dimulai.
c. Prinsip Pareto berlaku untuk pengujian perangkat lunak.
d. Pengujian harus dimulai dari yang kecil dan berkembang ke pengujian yang besar.
e. Pengujian yang mendalam tidak mungkin dilakukan.
f. Untuk menjadi paling efektif, pengujian harus dilakukan oleh pihak ketiga yang independen.
2. Pengujian (Testabilitas)
Berikut checklist yang memberikan serangkaian karakteristik yang membawa kepada perangkat lunak yang dapat diuji.
a. Operabilitas (semakin baik ia bekerja, semakin efisien ia dapat diuji).
b. Observabilitis (apa yang anda lihat adalah apa yang anda uji).
c. Kontrolabilitas (semakin baik kita dapat mengontrol perangkat lunak, semakin banyak pengujian yang dapat diotomatisasi dan dioptimalkan).
d. Dekomposabilitas (dengan mengontrol ruang lingkup pengujian, kita dapat dengan lebih cepat mengisolasi masalah dan melakukan pengujian kembali secara luas).
e. Kesederhanaan (semakin sedikit yang di uji, semakin cepat kita dapat mengujinya).
f. Stabilitas (semakin sedikit perubahan semakin sedikit gangguan dalam pengujian).
g. Kemampuan untuk dapat dipahami (semakin banyak informasi yang kita miliki, semakin halus pengujian yang akan dilakukan).
3.Tujuan
a. Menilai apakah sistem yang dikembangkan telah sesuai dan memenuhi kebutuhan yang sudah ditetapkan.
b. Menemulan kesalahan pada sistem yang tidak terlihat sebelumnya.
c. Menilai apakah sistem sudah beroperasi dengan benar.
4.Prosedur testing
a. Tentukan yang akan diuji.
b. Menentikan cara pelaksanaan pengujian. c. Membuatkan kasus uji
d. Menentukan hasil yang diharapkan.
e. Melaksanakan pengujian.
f. Melakukan perbandingan antara hasil uji dan hasil yang diharapkan.
Perbedaan Black Box Testing dan White Box Testing
Black Box Testing adalah uji coba terhadap fungsionalalitas sebuah aplikasi atau program apapun yang sedang dikembangkan. Sedangkan White Box Testing adalah metode uji coba struktur internal aplikasi melalui sebuah software