Pengujian adalah proses menjalankan sebuah program dengan maksud tertentu untuk menemukan kesalahan sebelum pengiriman ke pengguna. Dengan pengujian kita dapat melihat: Error Kesesuaian dengan persyaratan Performa Kualitas
Exhaustive Testing : menguji semua path yang ada di program Selective Testing : menguji path terpanjang yang ada di program Test Case Design : untuk menemukan error secara keseluruhan dengan usaha dan waktu yang minimum White-Box Testing : tujuannya untuk melihat paling tidak statement dan kondisi dijalankan sekali Mengapa Cover? logic errors and incorrect assumptions are inversely proportional to a path's execution probability we often believe that a path is not likely to be executed; in fact, reality is often counter intuitive typographical errors are random; its likely that untested paths will contain some Compound Statement
Cyclomatic Complexity
Loop Testing
Black-Box Testing requirements input events Equivalence Partitioning: Sample Equivalence Classes output
Integration Testing Strategies Pendekatannya: the big bang approach an incremental construction strategy Top Down Integration
Unit Testing
Bottom-Up Integration
Unit Testing
Sandwich Testing
Debugging Effort waktu yg dibutuhkan untuk membetulkan error dan melakukan regression tests waktu yg dibutuhkan untuk mendiagnosis gejala dan menentukan penyebabnya
Symptoms & Causes gejala dan penyebabnya mungkin saja terpisah gejala mungkin menghilang ketika masalah sudah dibetulkan penyebabnya mungkin terjadi dari kombinasi yg bukan error penyebabnya terjadi karena program atau kompile error penyebab terjadi dari asusmi symptom may be intermittent
Debugging: Final Thoughts pikirkan gejala yg kamu lihat pergunakan tools minta bantuan seseorang setelah bug dibetulkan maka kerjakan regression test