بناء اختبار أساسي باستخدام Mocha و Chai
لإنشاء اختبار أساسي باستخدام Mocha و Chai ، يمكنك اتباع الخطوات التالية:
1. التثبيت Mocha و Chai: استخدم npm(مدير حزمة العقدة) للتثبيت Mocha وفي Chai مشروع Node.js الخاص بك. قم بتشغيل الأمر التالي في دليل المشروع الخاص بك:
npm install mocha chai --save-dev
2. قم بإنشاء ملف اختبار: قم بإنشاء ملف جديد ، على سبيل المثال test.js
، واستورد الإعلانات التالية لاستخدامها Mocha و Chai:
const chai = require('chai');
const expect = chai.expect;
describe('Example Test Suite',() => {
it('should pass the test',() => {
expect(2 + 2).to.equal(4);
});
});
3. قم بتشغيل الاختبار: افتح المحطة وقم بتشغيل mocha
الأمر لتنفيذ الاختبارات. إذا سارت الأمور بسلاسة ، فسترى النتائج معروضة في المحطة.
يستخدم هذا الاختبار الأساسي Mocha والتحقق Chai من عملية حسابية بسيطة. في المثال أعلاه ، نتحقق من أن نتيجة العملية 2 + 2
يجب أن تكون مساوية لـ 4
. إذا كانت النتيجة صحيحة ، فسوف ينجح الاختبار.
من خلال الإضافة describe
والكتل it
، يمكنك إنشاء اختبارات أكثر تعقيدًا والتحقق من أجزاء مختلفة من شفرة المصدر الخاصة بك.
لاحظ أنه يمكنك أيضًا استخدام طرق التأكيد الأخرى التي يوفرها Chai ، مثل assert
أو should
، للاختبار. يعتمد الاستخدام المحدد على اختيارك وكيف تريد تنظيم كود الاختبار الخاص بك.
استخدام التأكيدات والاستعلامات للتحقق من نتائج الوظيفة
عند الاستخدام Mocha والاختبار Chai ، يمكنك استخدام التأكيدات والاستعلامات للتحقق من نتائج الوظائف. فيما يلي بعض الأمثلة على استخدام التأكيدات والاستعلامات للتحقق من نتائج الوظيفة:
1. استخدم expect
التوكيد والاستعلام to.equal
للتحقق من نتيجة دالة تُرجع قيمة معينة:
const result = myFunction();
expect(result).to.equal(expectedValue);
2. استخدم تأكيد "توقع" والاستعلام to.be.true
أو to.be.false
للتحقق من نتيجة دالة تُرجع قيمة منطقية:
const result = myFunction();
expect(result).to.be.true; // or expect(result).to.be.false;
3. استخدم تأكيد "توقع" والاستعلام to.be.null
أو to.be.undefined للتحقق من نتيجة دالة تُرجع قيمة خالية أو غير محددة:
const result = myFunction();
expect(result).to.be.null; // or expect(result).to.be.undefined;
4. استخدم expect
التوكيد والاستعلام to.include
للتحقق مما إذا كانت القيمة مضمنة في مصفوفة أو سلسلة:
const result = myFunction();
expect(result).to.include(expectedValue);
5. استخدم expect
التوكيد والاستعلام to.have.lengthOf
للتحقق من طول مصفوفة أو سلسلة:
const result = myFunction();
expect(result).to.have.lengthOf(expectedLength);
هذه الأمثلة ليست سوى عدد قليل من العديد من الطرق لاستخدام التأكيدات والاستعلامات في Mocha والتحقق Chai من نتائج الوظائف. يمكنك تخصيص واستخدام التأكيدات والاستفسارات المناسبة بناءً على احتياجات اختبار مشروعك.
إنشاء حالات الاختبار الناجحة والفاشلة
عند كتابة حالات الاختبار باستخدام Mocha و Chai ، من المهم تغطية كل من سيناريوهات النجاح والفشل. فيما يلي أمثلة لإنشاء حالات اختبار لكل من سيناريوهات النجاح والفشل:
1. حالة اختبار ناجح:
describe('myFunction',() => {
it('should return the expected result',() => {
// Arrange
const input = // provide the input for the function
const expected = // define the expected result
// Act
const result = myFunction(input);
// Assert
expect(result).to.equal(expected);
});
});
2. حالة اختبار الرسوب:
describe('myFunction',() => {
it('should throw an error when invalid input is provided',() => {
// Arrange
const invalidInput = // provide invalid input for the function
// Act and Assert
expect(() => myFunction(invalidInput)).to.throw(Error);
});
});
في حالة الاختبار الناجح ، تقوم بتحديد مدخلات الوظيفة والنتيجة المتوقعة. بعد ذلك ، تقوم باستدعاء الوظيفة مع الإدخال والتأكيد على أن النتيجة تطابق القيمة المتوقعة.
في حالة اختبار الفشل ، تقوم بتوفير إدخال غير صالح للوظيفة وتؤكد أنها تسبب خطأً. هذا يضمن أن الوظيفة تتعامل بشكل صحيح مع الإدخال غير الصحيح أو شروط الخطأ.
من خلال تغطية كل من سيناريوهات النجاح والفشل في حالات الاختبار الخاصة بك ، يمكنك التأكد من اختبار التعليمات البرمجية الخاصة بك بدقة والتعامل مع المواقف المختلفة بشكل مناسب.