Chạy Unit Test sử dụng JUnit 5 với Apache Maven

Trong bài viết trước, mình đã nói về plugin Maven Surefire Plugin của Apache Maven để chạy Unit Test trong các project Maven. Mình đã sử dụng JUnit 4 trong ví dụ của bài viết này. Nếu bây giờ mình upgrade thư viện JUnit từ phiên bản 4 lên phiên bản 5 trong ví dụ của bài viết này bằng cách thay đổi dependency của JUnit cho phiên bản 5 trong tập tin pom.xml:

và sửa lại class CalculationTest cho đúng:

thì khi click chuột phải vào project rồi chọn Run As và chọn Maven test, các bạn sẽ thấy lỗi khi chạy như sau:

Nguyên nhân là gì? Đó là bởi hiện tại Maven Surefire Plugin mặc định của phiên bản Apache Maven mà mình đang sử dụng chưa hỗ trợ đầy đủ cho JUnit phiên bản 5.

Để khắc phục lỗi này, các bạn hãy khai báo tường minh plugin Maven Surefire Plugin trong tập tin pom.xml với phiên bản từ 2.22.0 trở lên như sau:

Lúc này, nếu chạy lại “mvn test”, các bạn sẽ không thấy lỗi nữa:

Add Comment