Unit testing adalah suatu jenis software testing yang dilakukan untuk menguji coba suatu bagian ataupun komponen yang ada pada software. Unit tersebut bisa berbentuk fungsi, kode, metode, prosedur, modul ataupun objek itu sendiri.
Unit testing sendiri adalah termasuk salah satu tahapan di dalam software development. Umumnya, pengujian tersebut dilakukan sebelum dilakukan system integration testing.
Jest adalah framework pengujian open-source yang dibangun di atas Javascript, yang dibuat oleh Facebook. Jest dapat diinstall menggunakan package manager node seperti npm, yarn, atau pnpm.
Jest menggunakan matchers untuk menegaskan suatu kondisi. Beberapa matchers yang sering digunakan dengan tes jest.
Equality
Truthiness
Number matchers
String matchers
Seperti unit test yang lain Jest juga mempunyai hooks untuk setup dan cleanup methods. Hooks jest dieksekusi sebelum dan sesudah dari setiap tes rangkaian atau dieksekusi sebelum dan sesudah eksekusi rangkaian yang dibuat. Berikut hooks yang tersedia pada Jest:
beforeEach
afterEach
beforeAll
afterAll
Buka project buka Course Day 6
Install jest & supertest
Inisiasi jest dengan perintah berikut
Buat folder dengan nama tests dan file sample.test.js
Tambahkan script test pada package.json
Jalankan tests dengan perintah seperti gambar dibawah
Buat file baru bernama server.js
Buat file user.test.js
Run test
https://www.testim.io/blog/jest-testing-a-helpful-introductory-tutorial/
https://dev.to/nedsoft/testing-nodejs-express-api-with-jest-and-supertest-1km6