การสร้างแบบทดสอบอย่างง่ายด้วย Mocha และ Chai

สร้างแบบทดสอบพื้นฐานโดยใช้ Mocha และ Chai

หากต้องการสร้างการทดสอบพื้นฐานโดยใช้ Mocha และ Chai คุณสามารถทำตามขั้นตอนต่อไปนี้:

1. ติดตั้ง Mocha และ Chai: ใช้ npm (Node Package Manager) เพื่อติดตั้ง 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. ใช้การยืนยัน `expect` และ คำสั่ง to.be.trueor to.be.falseเพื่อตรวจสอบผลลัพธ์ของฟังก์ชันที่ส่งคืนค่าบูลีน:

const result = myFunction();
expect(result).to.be.true; // or expect(result).to.be.false;

3. ใช้การยืนยัน `expect` และto.be.nullคำสั่ง or to.be.undefined เพื่อตรวจสอบผลลัพธ์ของฟังก์ชันที่ส่งคืนค่า null หรือค่าที่ไม่ได้กำหนด:

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

ในกรณีที่ทดสอบสำเร็จ คุณกำหนดอินพุตสำหรับฟังก์ชันและผลลัพธ์ที่คาดหวัง จากนั้นคุณเรียกใช้ฟังก์ชันด้วยการป้อนข้อมูลและยืนยันว่าผลลัพธ์ตรงกับค่าที่คาดไว้

ในกรณีทดสอบความล้มเหลว คุณระบุอินพุตที่ไม่ถูกต้องให้กับฟังก์ชันและยืนยันว่าเกิดข้อผิดพลาด สิ่งนี้ทำให้มั่นใจได้ว่าฟังก์ชันจัดการกับอินพุตที่ไม่ถูกต้องหรือเงื่อนไขข้อผิดพลาดอย่างเหมาะสม

ด้วยการครอบคลุมทั้งสถานการณ์ที่สำเร็จและล้มเหลวในกรณีทดสอบของคุณ คุณจึงมั่นใจได้ว่าโค้ดของคุณได้รับการทดสอบอย่างละเอียดและจัดการกับสถานการณ์ต่างๆ ได้อย่างเหมาะสม