REVIEW PENGUJIAN S/W Oleh Cipta Wahyudi
KENAPA HARUS DIUJI ? • Kita bukan seorang programmer yg cukup baik • Kita mungkin tidak dapat cukup berkonsentrasi untuk menghindari kesalahan • Kita kadang2 lupa menggunakan pemrograman terstruktur secara penuh, perancangan atas-bawah utk mendapatkan solusi • Kita kadang buruk dalam mengerjakan sesuatu • Kita seharusnya dapat membedakan apa yg dikatakan programmer lain atau pelanggan dan apa yg sebenarnya mereka pikirkan • Kita merasa bersalah apabila seseorang harus menguji koding kita • Pengujian merupakan suatu perizinan terhadap kesalahan
Tahap testing • Testing adalah tahap yang sangat penting didalam proses pembuatan program • Testing dilakukan ketika program sudah ditulis • Testing atau aktiftas untuk menjamin kualitas program dapat dilakukan selama proses pembuatan program. • Tahap testing: – Testing sebelum implementasi/Pre implementation testing – Testing sesudah implementasi/Post implementation testing
Pre-implemtation Testing • Sebelum diimplementasikan ide, konsep harus ditest • Pre-implementation testing dilakukan tidak oleh programmer atau tim testing, tetapi oleh tim review, terdiri dari project manager, klien atau pembangun sistem
Client Requirement
Meeting
Analysis Validation
Operational System
Specification of requirements
Validation
Installation & Maintenance
Working System
Validation
Testing
System Design
Alternative Siolutions Validation
Technical Specification
• Reviewers mengecek dokumen spesifikasi dari tahap analisis apakah akurat menangkap kebutuhan client, konsisten dan layak.
Post-implementation testing • Post-implementation adalah testing pada program • Tehnik testing Post-implementation : – White box testing – Black box testing
White box testing • White box testing, sering dikenal juga sebagai white box, struktural, dan berdasarkan program atau glass box testing. • Testing ini dilakukan oleh seseorang yang dapat mengakses langsung program seperti programer. Testing pada logika, kondisi, pengulangan atau blok statement, testing pada sebagian atau seluruh bagian program
Black Box Testing • Black box dikenal juga sebagai spesifikasi atau fungsional testing, program atau unit program. Testing dilakukan tanpa mengetahui struktur dari program • Dilakukan seseorang selain programer atau orang seseorang yang tidak mempunyai akses langsung ke dalam program • Program ditesting dengan cara menginput data kedalam black box, dan dicek apakah output sesuai dengan yang dikehendaki ?
Tahap-tahap testing • Unit testing • Integration testing • System testing
Unit testing • Tidak ada standar untuk sesuatu yang dinamakan dengan unit: – Unit testing mengecek kohesi tunggal antara prosedur atau fungsi dengan prosedur atau fungsi yang lain – Bagian terkecil dari program ditesting dan di compile – Sebuah fungsi yang dapat ditulis dalam suatu waktu tertentu
Integration testing • Integration testing adalah proses mengecek masing-masing unit apakah tetap bekerja dengan baik ketika diintergrasikan
System testing • Pada system testing, pengecekan terhadap sistem apakah tetap bekerja dengan baik pada kondisi normal • Pengecek juga mengecek performance dari sistem, dengan kondisi tidak normal misalnya dengan cara memasukan jumlah data input yang besar. • Pengecek juga mengecek apakah sistem akan menampilkan pesan yang benar ketika sebuah error terjadi • Juga mengecek keamanan dari sistem
Tipe-tipe lain testing • Regression testing • Testing penerimaan user/Acceptance testing by user or a testing team • Beta testing • Release testing
Regression testing • Melakukan testing ulang dan melihat hasilnya kembali sering dinamakan regression testing
Testing penerimaan user/Acceptance Testing • Testing penerimaan user dilakukan oleh user ketika software diberikan ke user. • Testing penerimaan user adalah sebuah sebuah proses formal test untuk melihat apakah sistem dapat memenuhi kriteria yang diharapkan atau dapat diterima.
Beta test • Dilakukan oleh orang luar yang tidak berkaitan yang dapat mewakili klien atau pelanggan
Release testing • Release testing dilakukan untuk mengecek apakah program yang akan dirilis kepasaran sudah selesai, CD atau disk sudah berisi file-file yang benar sesuai versinya. • CD bebas dari virus dan dokumentasi yang benar sudah dimasukkan. • Tester juga melakukan pengecekan dengan membandingkan software, dokumentasi yang dibutukan dan dokumentasi user
Siapa saja yang melakukan testing • • • • •
The programmer A team of tester Beta tester The customer The maintainer
Bagian2 yang dilakukan testing • Bagian statement (Statement coverage) • Bagian percabangan (Branch coverage) • Bagian kondisi (Condition coverage)