JUnit 6 ถูกปล่อยออกมาเมื่อปลายปีที่แล้ว
และเริ่มมีการนำมาใช้งานมากยิ่งขึ้น
หนึ่งในนั้นคือ Spring framework 7 และ Spring Boot 4
ซึ่งใช้งาน JUnit 6 มาให้เลย สำหรับการสร้าง project จาก Spring Initializer
ดังนั้นมาดูกันหน่อยว่าใน JUnit 6 มีอะไรที่น่าสนใจบ้าง ?

เริ่มด้วยต้องใช้งานร่วมกับ Java 17 ขึ้นไปเท่านั้น
และ Kotlin 2.2 ขึ้นไป ซึ่งสนับสนุน Kotlin coroutines ให้ง่ายขึ้น

ถ้าทำการสร้าง Spring Boot project จะมี library ของ JUnit 6 มาให้เลย
รวมทั้งสนับสนุนเรื่อง Nullability annotation จาก JSpecify มาด้วย

และถ้าลองสังเหตให้ดี ๆ
จะพบว่า JUnit Platform, Jupiter และ Vintage ใช้ version ตรงกันแล้ว !!

ทำการเปลี่ยนแปลง library สำหรับ parsing CSV จาก univocity-parsers เป็น FastCSV
ซึ่งใช้ในการทำ data-driven testing
ซึ่งมีการทำงานที่รวดเร็วกว่า
มี error message ที่อ่านเข้าใจง่ายขึ้น
และยังคง active development

รวมทั้งยังปรับปรุงเรื่องของ การทำงานแบบ parallel testing และ dynamic testing
รวมทั้ง dry run mode เพื่อใช้ validate test ก่อนจะทำการ run จริง ๆ
และเพิ่ม –fail-fast flag มาให้ด้วย

ดังนั้นลองใช้งานกันดูครับ
ขอให้สนุกกับการ coding และ testing !!

สำหรับใครที่ต้องการ migrate มาใช้งานลองดูเอกสารเพิ่มเติมได้