JavaScript:
การเขียนการทดสอบ

วิธีการ:

วิธีพื้นฐาน (การใช้ Jest)

Jest เป็นเฟรมเวิร์คการทดสอบที่ได้รับความนิยม ซึ่งมี API ที่เป็นมิตรสำหรับการเขียน unit tests ใน JavaScript ต้องการการตั้งค่าเริ่มต้นน้อยและมาพร้อมกับฟีเจอร์เช่นฟังก์ชันทดลอง (mock functions), ตัวจับเวลา และการทดสอบสแนปช็อต

  1. การติดตั้ง:
npm install --save-dev jest
  1. การเขียนทดสอบง่ายๆ:

สร้างไฟล์ชื่อ sum.test.js:

const sum = require('./sum'); // สมมุติว่าฟังก์ชันนี้เป็นการบวกเลขสองตัว

test('บวก 1 + 2 เท่ากับ 3', () => {
  expect(sum(1, 2)).toBe(3);
});
  1. การรันทดสอบของคุณ:
npx jest

ผลลัพธ์ตัวอย่าง:

PASS  ./sum.test.js
✓ บวก 1 + 2 เท่ากับ 3 (5ms)

การทดสอบโค้ดแบบอะซิงโครนัส

Jest ทำให้การทดสอบ promises และ syntax 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 เพื่อการทดสอบที่มีการแสดงออกมากขึ้น

  1. การติดตั้ง:
npm install --save-dev mocha chai
  1. การเขียนทดสอบด้วย 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);
  });
});
  1. การรันทดสอบของคุณด้วย Mocha:

เพิ่มสคริปต์ใน package.json ของคุณ:

"scripts": {
  "test": "mocha"
}

จากนั้นทำการรัน:

npm test

ผลลัพธ์ตัวอย่าง:

  Calculate
    ✓ ควรบวกค่าสองตัว


  1 passing (8ms)

ตัวอย่างเหล่านี้แสดงการเขียนและการทำงานของการทดสอบพื้นฐานใน JavaScript การเลือกใช้เฟรมเวิร์คการทดสอบเช่น Jest หรือ Mocha ร่วมกับ Chai สามารถให้ฐานรากที่มั่นคงสำหรับการทดสอบแอปพลิเคชันที่แข็งแกร่ง ช่วยให้แน่ใจว่าโค้ดของคุณทำงานได้ตามที่ตั้งใจไว้ตลอดการอัปเดตและการปรับปรุงโค้ด