การสร้างแบบทดสอบอย่างง่ายด้วย Mocha and 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.true or 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 and 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);  
  });  
});

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

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

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