JavaScript:
כתיבת בדיקות
איך לעשות:
גישה טבעית (באמצעות Jest)
Jest הוא מסגרת בדיקות פופולרית שמספקת API ידידותי לכתיבת בדיקות יחידה ב-JavaScript. היא דורשת מעט הגדרה ומגיעה עם תכונות כמו פונקציות מדמה, טיימרים ובדיקת Snapshot.
- התקנה:
npm install --save-dev jest
- כתיבת בדיקה פשוטה:
יצירת קובץ בשם sum.test.js
:
const sum = require('./sum'); // נניח שפונקציה זו פשוט מחברת שני מספרים
test('מוסיף 1 + 2 לקבלת 3', () => {
expect(sum(1, 2)).toBe(3);
});
- הרצת הבדיקה שלך:
npx jest
פלט לדוגמא:
PASS ./sum.test.js
✓ מוסיף 1 + 2 לקבלת 3 (5ms)
בדיקת קוד אסינכרוני
Jest מקל על בדיקת promises ותחביר async/await:
// asyncSum.js
async function asyncSum(a, b) {
return Promise.resolve(a + b);
}
// asyncSum.test.js
test('חיבור אסינכרוני עובד', async () => {
await expect(asyncSum(1, 2)).resolves.toBe(3);
});
שימוש בספריות צד שלישי (Mocha & Chai)
Mocha היא מסגרת בדיקות פופולרית נוספת, שלעיתים קרובות משמשת יחד עם ספריית ההבטחות Chai לבדיקות יותר אקספרסיביות.
- התקנה:
npm install --save-dev mocha chai
- כתיבת בדיקה עם Mocha ו-Chai:
יצירת calculate.test.js
:
const chai = require('chai');
const expect = chai.expect;
const calculate = require('./calculate'); // מודול חישוב פשוט
describe('Calculate', function() {
it('אמור לחבר שני ערכים', function() {
expect(calculate.sum(5, 2)).to.equal(7);
});
});
- הרצת הבדיקות שלך עם Mocha:
הוסף סקריפט ב-package.json
שלך:
"scripts": {
"test": "mocha"
}
לאחר מכן הרץ:
npm test
פלט לדוגמא:
Calculate
✓ אמור לחבר שני ערכים
1 passing (8ms)
דוגמאות אלו ממחישות כתיבת והרצת בדיקות בסיסית ב-JavaScript. אימוץ מסגרת בדיקות כמו Jest או Mocha יחד עם Chai יכול לספק בסיס מוצק לבדיקות יישום עמידות, שעוזר לוודא שהקוד שלך מתפקד כצפוי לאורך עדכונים ושינויי מבנה.