สร้างแบบทดสอบพื้นฐานโดยใช้ 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);
});
});
ในกรณีที่ทดสอบสำเร็จ คุณกำหนดอินพุตสำหรับฟังก์ชันและผลลัพธ์ที่คาดหวัง จากนั้นคุณเรียกใช้ฟังก์ชันด้วยการป้อนข้อมูลและยืนยันว่าผลลัพธ์ตรงกับค่าที่คาดไว้
ในกรณีทดสอบความล้มเหลว คุณระบุอินพุตที่ไม่ถูกต้องให้กับฟังก์ชันและยืนยันว่าเกิดข้อผิดพลาด สิ่งนี้ทำให้มั่นใจได้ว่าฟังก์ชันจัดการกับอินพุตที่ไม่ถูกต้องหรือเงื่อนไขข้อผิดพลาดอย่างเหมาะสม
ด้วยการครอบคลุมทั้งสถานการณ์ที่สำเร็จและล้มเหลวในกรณีทดสอบของคุณ คุณจึงมั่นใจได้ว่าโค้ดของคุณได้รับการทดสอบอย่างละเอียดและจัดการกับสถานการณ์ต่างๆ ได้อย่างเหมาะสม