مرجع سريع

ورقة غش تغطية الشيفرة باستخدام Mocha و Blanket.js

دليل مرجعي سريع لقياس تغطية الشيفرة البرمجية لاختبارات JavaScript باستخدام Blanket.js و Mocha.

· تاريخ النشر

[!NOTE] أداة تاريخية: استُخدمت Blanket.js على نطاق واسع لقياس تغطية شيفرة Mocha خفيفة الوزن داخل العملية. للمشاريع الحديثة بـ Node.js و TypeScript يُوصى باستخدام c8 (تغطية V8 الأصلية) أو NYC / Istanbul.

Blanket.js هي مكتبة سلسة لقياس تغطية شيفرة JavaScript مصممة للعمل مع مشغلات الاختبار مثل Mocha.

التثبيت

npm install --save-dev blanket

إعداد مساعد الاختبار

استدعِ Blanket قبل استدعاء الملفات التي تريد قياس تغطيتها:

// test/helper.js
if (process.env.COVERAGE) {
  require('blanket')({
    pattern: require('path').resolve('./src')
  });
}

// استدعِ الوحدات بعد تسجيل خطاف blanket
const myModule = require('../src/index');

نصوص package.json البرمجية

أضف أوامر التغطية إلى package.json:

{
  "scripts": {
    "test": "mocha test/",
    "coverage": "env COVERAGE=1 mocha -R html-cov > coverage.html && open coverage.html"
  }
}

أضف تقرير HTML الناتج إلى .gitignore:

echo "coverage.html" >> .gitignore

شغّل عملية إنشاء تقرير التغطية:

npm run coverage

التكامل المستمر و Coveralls

ثبّت مُخرج تقارير LCOV ومحول Coveralls:

npm install --save-dev mocha-lcov-reporter coveralls

أضف خطوة التنفيذ داخل مسارات التكامل المستمر (CI):

mocha -R mocha-lcov-reporter | ./node_modules/coveralls/bin/coveralls.js

المراجع

موضوعات ذات صلة