Site icon PlusMagi's Blog By Pitt Phunsanit

Unit Test คืออะไร ? ทำไมโปรแกรมเมอร์มือโปรถึงขาดไม่ได้

ในการเขียนโปรแกรม หลายคนอาจเคยเจอเหตุการณ์ “แก้จุดหนึ่ง พังอีกจุดหนึ่ง” หรือที่เรียกว่า Regression การเขียน Unit Test จึงเปรียบเสมือนการสร้าง “เกราะป้องกัน” ให้กับ Code ของเรา เพื่อให้มั่นใจว่าฟังก์ชันเล็ก ๆ แต่ละส่วนทำงานได้ถูกต้องตามที่ตั้งใจไว้


Unit Test คืออะไร ?

Unit Test คือการทดสอบซอฟต์แวร์ในระดับที่เล็กที่สุด ( Smallest unit ) ซึ่งโดยปกติหมายถึงการทดสอบ “ฟังก์ชัน” ( Function ) หรือ “เมธอด” ( Method ) เพียงอย่างเดียว โดยไม่สนใจส่วนประกอบภายนอก เช่น Database หรือ API อื่น ๆ


หลักการสำคัญของ Unit Test ( FIRST Rule )


โครงสร้างของ Unit Test ( AAA Pattern )

เพื่อให้ Unit Test อ่านง่ายและเป็นระเบียบ เรานิยมใช้โครงสร้าง AAA


ทำไมเราต้องเขียน Unit Test ?


ตัวอย่างการเขียน Unit Test ( Pseudo Code )

สมมติเรามีฟังก์ชันบวกเลขง่าย ๆ

// ฟังก์ชันที่ต้องการทดสอบ
function add(a, b) {
    return a + b;
}

// Unit Test
test('ควรคืนค่าเป็น 5 เมื่อบวก 2 กับ 3', () => {
    // 1. Arrange
    const num1 = 2;
    const num2 = 3;
    const expected = 5;

    // 2. Act
    const result = add(num1, num2);

    // 3. Assert
    expect(result).toBe(expected);
});

ข้อแนะนำสำหรับมือใหม่


สรุป

การเขียน Unit Test อาจดูเหมือนเสียเวลาในช่วงแรก แต่ในโปรเจกต์ที่มีความซับซ้อนหรือต้องดูแลรักษาในระยะยาว มันคือการลงทุนที่คุ้มค่าที่สุดอย่างหนึ่งของเหล่านักพัฒนาครับ


อ่านเพิ่มเติม

Exit mobile version