Unit test adalah bahagian penting dalam pembangunan perisian untuk memastikan ketepatan dan kebolehpercayaan kod sumber. Dengan TypeScript, anda boleh menulis unit test s dengan mudah dan fleksibel, menggunakan rangka kerja popular seperti Jest dan Mocha, digabungkan dengan perpustakaan penegasan seperti Chai dan perpustakaan mengejek seperti Sinon.
Berikut ialah panduan terperinci tentang menulis unit test s TypeScript dengan alat dan perpustakaan ini:
Jest
Jest
ialah rangka kerja yang digunakan secara meluas untuk menulis unit test s dalam TypeScript dan JavaScript. Ia menyediakan sintaks mudah dan ciri berkuasa seperti mengejek, ujian syot kilat dan laporan liputan.
Untuk mula menulis unit test s dengan Jest, anda perlu memasang Jest melalui npm atau yarn dengan menjalankan arahan berikut:
npm install jest --save-dev
Kemudian, anda boleh membuat fail ujian dengan sambungan .spec.ts atau .test.ts dan tulis kes ujian.
Sebagai contoh:
// 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
ialah rangka kerja pelari ujian yang fleksibel untuk TypeScript dan JavaScript. Ia menyokong sintaks yang jelas dan pelbagai jenis ujian seperti unit test s, ujian integrasi dan ujian berfungsi.
Untuk digunakan Mocha
dalam TypeScript, anda perlu memasang Mocha
dan Chai
melalui npm atau yarn dengan menjalankan arahan berikut:
npm install mocha chai --save-dev
Kemudian, anda boleh membuat fail ujian dan menulis kes ujian.
Sebagai contoh:
// 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
ialah perpustakaan penegasan yang popular digunakan untuk menulis penegasan dalam unit test s. Ia menyediakan sintaks yang jelas dan fleksibel, membolehkan anda menegaskan hasil kod sumber anda. Anda boleh menggunakan Chai sama ada Jest atau Mocha
untuk menulis penegasan dalam kes ujian anda.
Sebagai contoh:
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
ialah perpustakaan mengejek dan mengintip yang popular digunakan untuk mengejek dan menjejaki tingkah laku dalam kes ujian. Anda boleh menggunakan Sinon
sama ada Jest
atau Mocha
untuk mengejek dan menjejaki aktiviti dalam objek dan fungsi.
Sebagai contoh:
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
membolehkan anda membina unit test s yang berkuasa dan fleksibel dalam TypeScript. Dengan menggunakan kaedah dan fungsi Jest
, Mocha
, Chai
, dan Sinon
, anda boleh memastikan ketepatan dan kebolehpercayaan kod sumber anda semasa proses pembangunan perisian.