π― 1. Pengertian Software Testing
6
Software Testing adalah proses dalam Rekayasa Perangkat Lunak untuk mengevaluasi dan memverifikasi bahwa perangkat lunak bekerja sesuai dengan kebutuhan (requirement) serta bebas dari kesalahan (bug).
π‘ Narasi:
Testing bukan hanya mencari kesalahan, tetapi memastikan bahwa sistem memberikan nilai dan pengalaman yang benar bagi pengguna. Software tanpa testing berisiko tinggi mengalami kegagalan saat digunakan.
π― 2. Tujuan Software Testing
| Tujuan | Penjelasan |
|---|---|
| Menemukan bug | Mengidentifikasi kesalahan |
| Menjamin kualitas | Software sesuai standar |
| Verifikasi | Sesuai spesifikasi |
| Validasi | Sesuai kebutuhan user |
| Meningkatkan kepercayaan | Sistem lebih reliable |
π‘ Narasi:
Testing adalah bagian penting dalam menjaga kualitas software dan mengurangi risiko kegagalan sistem.
π 3. Posisi Testing dalam SDLC
6
π Dalam SDLC:
- Dilakukan setelah implementasi
- Bisa dilakukan paralel (Agile)
π‘ Narasi:
Dalam metode modern seperti Agile, testing dilakukan sejak awal dan terus menerus (continuous testing).
π§ͺ 4. Jenis-Jenis Software Testing (Berdasarkan Level)
7
π Level Testing:
- Unit Testing β Menguji unit kecil (fungsi/module)
- Integration Testing β Menguji integrasi modul
- System Testing β Menguji seluruh sistem
- Acceptance Testing (UAT) β Pengujian oleh user
π‘ Narasi:
Setiap level memiliki tujuan berbeda dan saling melengkapi untuk memastikan kualitas sistem secara menyeluruh.
π 5. Jenis Testing (Berdasarkan Metode)
πΉ Black Box Testing
7
- Fokus pada input & output
- Tidak melihat kode program
πΉ White Box Testing
6
- Menguji struktur internal kode
- Fokus pada logika program
π‘ Narasi:
Black box melihat dari sisi pengguna, sedangkan white box dari sisi developer.
βοΈ 6. Teknik Pengujian
π Teknik:
- Equivalence Partitioning
- Boundary Value Analysis
- Decision Table
- State Transition Testing
π‘ Narasi:
Teknik ini membantu membuat pengujian lebih sistematis dan efisien.
π§Ύ 7. Test Case dan Test Scenario
8
π Test Case:
- Input
- Expected output
- Actual result
π Test Scenario:
- Gambaran umum pengujian
π‘ Narasi:
Test case adalah dasar utama dalam proses testing yang terstruktur.
π 8. Bug dan Error
| Istilah | Penjelasan |
|---|---|
| Bug | Kesalahan dalam program |
| Error | Kesalahan manusia |
| Failure | Sistem tidak berjalan |
π‘ Narasi:
Bug adalah hal yang pasti terjadi, yang penting adalah bagaimana mengelolanya.
π§° 9. Tools Software Testing
6
π Tools:
- Selenium
- Postman
- Jira
π‘ Narasi:
Tools membantu mempercepat dan mempermudah proses testing.
π 10. Software Testing Life Cycle (STLC)
7
π Tahapan:
- Requirement Analysis
- Test Planning
- Test Case Development
- Test Execution
- Test Closure
π‘ Narasi:
STLC adalah siklus khusus dalam testing yang berjalan paralel dengan SDLC.
π 11. Perbandingan Testing Manual vs Automation
| Aspek | Manual | Automation |
|---|---|---|
| Kecepatan | Lambat | Cepat |
| Akurasi | Bergantung tester | Tinggi |
| Biaya awal | Rendah | Tinggi |
| Cocok untuk | Exploratory | Repetitive testing |
β οΈ 12. Tantangan Software Testing
| Tantangan | Penjelasan |
|---|---|
| Waktu terbatas | Deadline ketat |
| Kompleksitas sistem | Sulit diuji |
| Perubahan requirement | Testing harus ulang |
| Bug tersembunyi | Sulit dideteksi |
π§ͺ 13. Studi Kasus
π Sistem Login:
- Input benar β berhasil login
- Input salah β error
π‘ Narasi:
Kasus sederhana ini menunjukkan pentingnya validasi input dalam testing.
π 14. Alur Pengujian
| Tahap | Output |
|---|---|
| Test Planning | Rencana testing |
| Test Case | Skenario uji |
| Execution | Hasil uji |
| Bug Report | Daftar bug |
π§ 15. Best Practice Software Testing
- Lakukan testing sejak awal
- Gunakan automation
- Dokumentasikan test case
- Lakukan regression testing
- Kolaborasi dengan developer
π 16. Kesimpulan
- Software testing memastikan kualitas sistem
- Terdiri dari berbagai jenis dan metode
- Merupakan bagian penting dalam SDLC
- Membantu mengurangi risiko kegagalan
π‘ Narasi Penutup:
Mahasiswa harus memahami bahwa testing bukan tahap akhir saja, tetapi proses berkelanjutan untuk memastikan software benar-benar siap digunakan.
π 17. Latihan / Diskusi
- Apa itu software testing?
- Sebutkan level testing!
- Apa perbedaan black box dan white box?
- Jelaskan STLC!
- Berikan contoh test case sederhana!
π 18. Tugas Praktik
- Buat test case sistem login
- Lakukan testing manual
- Gunakan Postman untuk API testing