Pengantar Unit Testing
Pelajari apa itu Unit Testing, mengapa penting dalam pengembangan perangkat lunak, pola dasar Arrange-Act-Assert (AAA), serta framework populer seperti JUnit, Pytest, dan Jest.
π§© Pengantar Unit Testing: Konsep, Manfaat, dan Framework Populer
Ingin coding tanpa khawatir bug?
Jawabannya adalah Unit Testing β salah satu pilar utama dalam menjaga kualitas perangkat lunak.
π Akses Slide Asli:
Pengantar Unit Testing β Kelompok 5
π§ Apa Itu Unit Testing?
Unit Testing adalah jenis pengujian perangkat lunak yang berfokus pada unit terkecil dari kode program, seperti:
- Fungsi (function)
- Metode (method)
- Kelas (class)
Tujuan utamanya adalah memastikan setiap bagian kecil kode berfungsi dengan benar secara terpisah, tanpa bergantung pada modul lain.
Biasanya, Unit Testing dilakukan paling awal oleh developer sebelum melakukan Integration Test atau System Test.
π§ Sederhananya:
Unit testing = Menguji bagian terkecil dari sistem untuk memastikan logikanya berjalan benar sebelum dirakit menjadi aplikasi utuh.
π Analogi Unit Testing
Bayangkan kamu sedang merakit mobil.
Sebelum mobil dirakit menjadi satu kesatuan, setiap komponen (ban, mesin, rem) diuji satu per satu terlebih dahulu.
Jika setiap bagian lolos pengujian, maka mobil utuh akan lebih mudah dirakit dan lebih andal.
Jika ditemukan masalah, kamu tahu letaknya β langsung di komponen yang diuji.
π Unit Testing = Menguji setiap βkomponen mobilβ sebelum dipasang menjadi satu kendaraan utuh.
π― Mengapa Unit Testing Itu Penting?
Unit Testing bukan sekadar formalitas β ia memberikan banyak manfaat nyata bagi pengembang maupun tim QA:
| Manfaat | Penjelasan |
|---|---|
| π Mendeteksi Bug Lebih Awal | Bug dapat ditemukan sebelum kode digabungkan ke sistem utama. |
| π§ Meningkatkan Kepercayaan Diri Developer | Developer lebih yakin bahwa perubahan kode tidak akan merusak bagian lain. |
| π° Menghemat Waktu dan Biaya | Memperbaiki bug di tahap awal jauh lebih murah dibanding setelah deployment. |
| βοΈ Mempermudah Refactoring | Kode bisa diubah tanpa takut merusak fungsionalitas lama. |
| π Memberikan Dokumentasi Hidup | Test unit berfungsi sebagai dokumentasi aktif yang menjelaskan bagaimana kode seharusnya bekerja. |
π§© Pola Dasar: Arrange β Act β Assert (AAA)
Pola ini adalah struktur paling umum dalam penulisan Unit Test yang sederhana dan efektif.
| Tahap | Penjelasan |
|---|---|
| ARRANGE | Menyiapkan kondisi awal tes (input, variabel, atau objek yang diperlukan). |
| ACT | Menjalankan fungsi atau metode yang ingin diuji. |
| ASSERT | Memverifikasi hasil output agar sesuai dengan ekspektasi. |
π Contoh Sederhana (Python)
```python def add(a, b): return a + b
def test_addition(): # Arrange a = 2 b = 3
1
2
3
4
5
# Act
result = add(a, b)
# Assert
assert result == 5
Kontak
Developer: Kevin Ardhana
GitHub: @kevinardhana096
Email: kevinardhana096@gmail.com
