วันนี้ลองใช้งาน Junit 5 ในงานนิดหน่อย
พบว่าหลาย ๆ อย่างจาก JUnit 4 มันหายไป หลายอย่างเพิ่มมา
ทั้งทำให้ยากและง่ายขึ้น
มีสิ่งหนึ่งที่น่าสนใจคือ การทดสอบกับ Exception
เนื่องจากของเดิมจาก JUnit 4 นั้นมีทางเลือกให้เยอะ
ทั้ง try-catch (ไม่ควรทำนะ)
ทั้ง @Rule
ทั้ง expected ใน @Test
ใน JUnit 5 นั้นไม่มี แต่ได้เพิ่ม assertion มาให้เลย
ดังนั้นลองมาใช้งานกันดูหน่อย
คำอธิบาย
ใน JUnit 5 นั้นจะมี org.junit.jupiter.api.Assertions#assertThrows มาให้เลย
ใช้สำหรับการตรวจสอบ exception
parameter ตัวที่ 1 คือ Exception ที่คาดหวัง
parameter ตัวที่ 2 คือ Executable ใช้เรียก class ที่ต้องการทดสอบ
ชีวิตดูลำบากขึ้นหรือเปล่านะ ?
Source code ตัวอย่างอยู่ที่นี่ Github::Up1::Junit 5 with exception