Unit test ing adalah bagian penting dari pengembangan perangkat lunak untuk memastikan keakuratan dan keandalan kode sumber. Dengan TypeScript, Anda dapat menulis unit test s dengan mudah dan fleksibel, menggunakan kerangka kerja populer seperti Jest dan Mocha, digabungkan dengan pustaka pernyataan seperti Chai dan pustaka tiruan seperti Sinon.
Berikut adalah panduan mendetail tentang menulis unit test s TypeScript dengan alat dan pustaka ini:
Jest
Jest
adalah framework yang banyak digunakan untuk menulis unit test s in TypeScript dan JavaScript. Ini menyediakan sintaks sederhana dan fitur canggih seperti mocking, pengujian snapshot, dan laporan cakupan.
Untuk mulai menulis unit test s dengan Jest, Anda perlu menginstal Jest melalui npm atau benang dengan menjalankan perintah berikut:
npm install jest --save-dev
Kemudian, Anda dapat membuat file pengujian dengan ekstensi .spec.ts atau .test.ts dan menulis kasus pengujian.
Misalnya:
// math.ts
export function add(a: number, b: number): number {
return a + b;
}
// math.spec.ts
import { add } from './math';
test('add function adds two numbers correctly',() => {
expect(add(2, 3)).toBe(5);
});
Mocha
Mocha
adalah kerangka kerja pelari uji yang fleksibel untuk TypeScript dan JavaScript. Ini mendukung sintaks yang jelas dan berbagai jenis tes seperti unit test s, tes integrasi, dan tes fungsional.
Untuk menggunakan Mocha
in TypeScript, Anda perlu menginstal Mocha
dan Chai
melalui npm atau benang dengan menjalankan perintah berikut:
npm install mocha chai --save-dev
Kemudian, Anda dapat membuat file uji dan menulis kasus uji.
Misalnya:
// math.ts
export function add(a: number, b: number): number {
return a + b;
}
// math.spec.ts
import { expect } from 'chai';
import { add } from './math';
describe('add function',() => {
it('should add two numbers correctly',() => {
expect(add(2, 3)).to.equal(5);
});
});
Chai
Chai
adalah pustaka pernyataan populer yang digunakan untuk menulis pernyataan dalam unit test s. Ini memberikan sintaks yang jelas dan fleksibel, memungkinkan Anda untuk menegaskan hasil kode sumber Anda. Anda dapat menggunakan Chai dengan salah satu Jest atau Mocha
untuk menulis pernyataan dalam kasus pengujian Anda.
Misalnya:
import { expect } from 'chai';
import { add } from './math';
it('add function should add two numbers correctly',() => {
expect(add(2, 3)).to.equal(5);
});
Sinon
Sinon
adalah pustaka ejekan dan mata-mata populer yang digunakan untuk mengejek dan melacak perilaku dalam kasus uji. Anda dapat menggunakan Sinon
dengan salah satu Jest
atau Mocha
untuk mengejek dan melacak aktivitas dalam objek dan fungsi.
Misalnya:
import { expect } from 'chai';
import { add } from './math';
import sinon from 'sinon';
it('add function should call console.log with the correct result',() => {
const consoleSpy = sinon.spy(console, 'log');
add(2, 3);
expect(consoleSpy.calledWith(5)).to.be.true;
consoleSpy.restore();
});
Menggabungkan Jest
atau Mocha
dengan Chai
dan Sinon
memungkinkan Anda membangun unit test s yang kuat dan fleksibel di TypeScript. Dengan menggunakan metode dan fungsi Jest
, Mocha
, Chai
, dan Sinon
, Anda dapat memastikan keakuratan dan keandalan kode sumber Anda selama proses pengembangan perangkat lunak.