اختبارات وحدة الكتابة في TypeScript: استخدام Jest و Mocha ودمج مع Chai و Sinon

Unit test ing جزءًا مهمًا من تطوير البرامج لضمان دقة وموثوقية كود المصدر. باستخدام TypeScript ، يمكنك الكتابة unit test بسهولة ومرونة ، باستخدام أطر عمل شائعة مثل ، Jest ودمجها Mocha مع مكتبات التأكيد مثل Chai المكتبات الساخرة مثل Sinon.

فيما يلي دليل مفصل حول الكتابة unit test باستخدام TypeScript هذه الأدوات والمكتبات:

 

Jest

Jest هو إطار واسع الاستخدام لكتابة unit test s TypeScript و JavaScript. يوفر تركيبًا بسيطًا وميزات قوية مثل السخرية واختبار اللقطة وتقارير التغطية.

لبدء الكتابة unit test باستخدام Jest ، تحتاج إلى التثبيت Jest عبر npm أو الغزل عن طريق تشغيل الأمر التالي:

npm install jest --save-dev

بعد ذلك ، يمكنك إنشاء ملفات اختبار بامتداد .spec.ts أو .test.ts وكتابة حالات الاختبار.

على سبيل المثال:

// 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 هو إطار عمل اختبار مرن لـ TypeScript و JavaScript. وهو يدعم صياغة واضحة وأنواع مختلفة من الاختبارات مثل unit test اختبارات التكامل والاختبارات الوظيفية.

للاستخدام Mocha في TypeScript ، تحتاج إلى التثبيت Mocha وعبر Chai npm أو الغزل عن طريق تشغيل الأمر التالي:

npm install mocha chai --save-dev

بعد ذلك ، يمكنك إنشاء ملفات اختبار وكتابة حالات الاختبار.

على سبيل المثال:

// 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 هي مكتبة تأكيد شعبية تستخدم لكتابة التأكيدات في unit test s. إنه يوفر بناء جملة واضحًا ومرنًا ، مما يسمح لك بتأكيد نتائج شفرة المصدر الخاصة بك. يمكنك استخدامها Chai مع Jest أو Mocha لكتابة تأكيدات في حالات الاختبار الخاصة بك.

على سبيل المثال:

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 هي مكتبة شهيرة للسخرية والتجسس تستخدم للسخرية وتتبع السلوكيات في حالات الاختبار. يمكنك استخدام Sinon إما مع Jest أو Mocha للسخرية وتتبع الأنشطة في الكائنات والوظائف.

على سبيل المثال:

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();  
});  

 

الجمع Jest أو Mocha مع Chai ويسمح Sinon لك ببناء عناصر قوية ومرنة unit test في TypeScript. باستخدام أساليب ووظائف و و و ، يمكنك ضمان دقة وموثوقية كود المصدر الخاص بك أثناء عملية تطوير البرنامج Jest. Mocha Chai Sinon