A S T A C O D E

Loading

Unit Testing JavaScript dengan Jest: Dari Dasar hingga Coverage 80%
Tutorial

Unit Testing JavaScript dengan Jest: Dari Dasar hingga Coverage 80%

Admin

Author

Jul 26, 2026

Published

65

Views

Unit Testing JavaScript dengan Jest: Dari Dasar hingga Coverage 80%

Mengapa Unit Testing Penting?

Unit testing membantu developer menemukan bug lebih awal, melakukan refactoring dengan lebih aman, dan memastikan kode tetap berjalan sesuai harapan. Test yang baik juga menjadi dokumentasi perilaku kode dan meningkatkan kepercayaan diri saat melakukan deployment.

Setup Jest

Untuk project Node.js, Jest dapat dipasang sebagai development dependency:

npm install -D jest

Jika menggunakan TypeScript, tambahkan konfigurasi yang sesuai seperti ts-jest. Untuk aplikasi React, developer juga dapat menggunakan Jest dengan React Testing Library atau alternatif seperti Vitest.

Menulis Test yang Baik

Gunakan pola AAA (Arrange, Act, Assert) agar struktur test mudah dipahami:

  • Arrange – siapkan data dan kondisi awal

  • Act – jalankan fungsi yang ingin diuji

  • Assert – periksa hasil yang diperoleh

Setiap test sebaiknya fokus pada satu behavior dengan nama yang menjelaskan kondisi dan hasil yang diharapkan.

Mocking dalam Jest

Mocking digunakan ketika test membutuhkan dependency tertentu tanpa menjalankan implementasi aslinya.

Beberapa fitur yang sering digunakan:

  • jest.fn() untuk membuat mock function

  • jest.mock() untuk melakukan mock pada module

  • jest.spyOn() untuk memantau pemanggilan function tertentu

Dengan mocking, developer dapat mengisolasi unit yang sedang diuji dan membuat test lebih mudah dikontrol.

Testing Kode Asynchronous

Kode asynchronous perlu diuji dengan cara yang tepat agar Jest menunggu proses selesai. Gunakan async/await atau return Promise dari test.

Selain kondisi berhasil, uji juga error handling agar aplikasi tetap dapat menangani kegagalan dengan baik.

Fokus pada Coverage yang Bermakna

Code coverage bukan satu-satunya ukuran kualitas testing. Coverage 100% tidak berarti aplikasi bebas bug jika test yang dibuat tidak menguji behavior penting.

Fokuskan testing pada business logic, edge cases, validasi, dan error handling. Coverage sekitar 80% dengan test yang bermakna lebih berguna daripada coverage tinggi yang hanya mengejar angka.

Kesimpulan

Unit testing dengan Jest membantu menjaga kualitas JavaScript sekaligus membuat proses development lebih aman. Mulai dari test sederhana, gunakan mocking seperlunya, dan prioritaskan behavior penting daripada sekadar mengejar persentase coverage.

Unit Testing JavaScript dengan Jest: Dari Dasar hingga Coverage 80%

Looking for a professional partner?

Let's discuss how we can help your business grow with our technology solutions.

Chat with us