Testing Dengan Library Native Nodejs
Pada tulisan kali ini tidaklah panjang dan detail. Hanya mencatat bagian dari hasil belajar saja yaitu ternyata baru tau jika NodeJS itu sudah punya library untuk buat test sendiri. Mungkin klo Anda adalah programmer Golang pasti suda familiar dengan test package yang disediakan, jadi tidak perlu install library tambahan.
Lain halnya dengan Nodejs, mungkin saya kurang update soal ini karna kebanyakan kerjaan saya menggunakan golang, dan hanya beberapa yang menggunakan NodeJS. Setau saya NodeJS ingin membuat test kita perlu menginstall library seperti Mocha, atau Jest sebagai test runnernya. Namun di nodejs v18 itu sudah native atau bagian dari nodejs itu sendiri tanpa perlu menginstall library lagi. Berita tentang native test runner ini bisa Anda cek di https://nodejs.org/en/blog/announcements/v18-release-announce.
Jadi untuk mencoba test runner native pastikan nodejs versi 18 sudah terinstall di laptop Anda, untuk melihat versi yang terinstall Anda bisa gunakan perintah
node -v
v20.12.2
Sebagai contoh kita buat library simple di file lib.js isi dengan code berikut:
export const tambah = (a, b) => a+b;
lalu di folder yang sama kita akan buat file testingnya, code nya hampir mirip jika anda menuliskan test di mocha ataupun jest. Isi file lib.test.js dengan code berikut:
import { describe, it } from 'node:test';
import * as assert from 'node:assert';
import { tambah } from './lib.js';
describe('test library saya', () => {
it('success', () => {
assert.equal(tambah(1, 2, ), 3)
})
})
lalu jalankan perintah node --test untuk menjalankan test runnernya dah hasilnya akan muncul kurang lebih seperti ini:
# Subtest: test library saya
# Subtest: success
ok 1 - success
---
duration_ms: 0.102541
...
1..1
ok 1 - test librar saya
---
duration_ms: 0.922417
type: 'suite'
...
1..1
# tests 1
# suites 1
# pass 1
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 53.563333