diff --git a/testing-modules/junit-5/pom.xml b/testing-modules/junit-5/pom.xml
index f27630a76d..84e0577cfe 100644
--- a/testing-modules/junit-5/pom.xml
+++ b/testing-modules/junit-5/pom.xml
@@ -21,24 +21,34 @@
junit-platform-engine
${junit.platform.version}
+
+ org.junit.jupiter
+ junit-jupiter-engine
+ ${junit.jupiter.version}
+
org.junit.jupiter
junit-jupiter-params
${junit.jupiter.version}
+
+ org.junit.jupiter
+ junit-jupiter-api
+ ${junit.jupiter.version}
+
org.junit.platform
junit-platform-runner
${junit.platform.version}
test
-
+
org.junit.vintage
junit-vintage-engine
${junit.vintage.version}
test
-
+
org.junit.jupiter
junit-jupiter-migrationsupport
${junit.vintage.version}
diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/AssertionUnitTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/AssertionUnitTest.java
index 31b6e14d6c..f1f7c531f2 100644
--- a/testing-modules/junit-5/src/test/java/com/baeldung/AssertionUnitTest.java
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/AssertionUnitTest.java
@@ -2,7 +2,21 @@ package com.baeldung;
import static java.time.Duration.ofSeconds;
import static java.util.Arrays.asList;
-import static org.junit.jupiter.api.Assertions.*;
+import static org.junit.jupiter.api.Assertions.assertAll;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertIterableEquals;
+import static org.junit.jupiter.api.Assertions.assertLinesMatch;
+import static org.junit.jupiter.api.Assertions.assertNotEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertSame;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTimeout;
+import static org.junit.jupiter.api.Assertions.assertTimeoutPreemptively;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
import java.util.ArrayList;
import java.util.LinkedList;
@@ -91,11 +105,12 @@ public class AssertionUnitTest {
@Test
public void givenMultipleAssertion_whenAssertingAll_thenOK() {
+ Object obj = null;
assertAll(
"heading",
() -> assertEquals(4, 2 * 2, "4 is 2 times 2"),
() -> assertEquals("java", "JAVA".toLowerCase()),
- () -> assertEquals(null, null, "null is equal to null")
+ () -> assertEquals(obj, null, "null is equal to null")
);
}
diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/junit5/order/AlphanumericOrderUnitTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5/order/AlphanumericOrderUnitTest.java
new file mode 100644
index 0000000000..d62ca0c666
--- /dev/null
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5/order/AlphanumericOrderUnitTest.java
@@ -0,0 +1,33 @@
+package com.baeldung.junit5.order;
+
+import static org.junit.Assert.assertEquals;
+
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.MethodOrderer.Alphanumeric;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.TestMethodOrder;
+
+@TestMethodOrder(Alphanumeric.class)
+public class AlphanumericOrderUnitTest {
+ private static StringBuilder output = new StringBuilder("");
+
+ @Test
+ public void myATest() {
+ output.append("A");
+ }
+
+ @Test
+ public void myBTest() {
+ output.append("B");
+ }
+
+ @Test
+ public void myaTest() {
+ output.append("a");
+ }
+
+ @AfterAll
+ public static void assertOutput() {
+ assertEquals(output.toString(), "ABa");
+ }
+}
diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/junit5/order/CustomOrder.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5/order/CustomOrder.java
new file mode 100644
index 0000000000..e76230de63
--- /dev/null
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5/order/CustomOrder.java
@@ -0,0 +1,12 @@
+package com.baeldung.junit5.order;
+
+import org.junit.jupiter.api.MethodDescriptor;
+import org.junit.jupiter.api.MethodOrderer;
+import org.junit.jupiter.api.MethodOrdererContext;
+
+public class CustomOrder implements MethodOrderer{
+ @Override
+ public void orderMethods(MethodOrdererContext context) {
+ context.getMethodDescriptors().sort((MethodDescriptor m1, MethodDescriptor m2)->m1.getMethod().getName().compareToIgnoreCase(m2.getMethod().getName()));
+ }
+}
diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/junit5/order/CustomOrderUnitTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5/order/CustomOrderUnitTest.java
new file mode 100644
index 0000000000..fa45921879
--- /dev/null
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5/order/CustomOrderUnitTest.java
@@ -0,0 +1,33 @@
+package com.baeldung.junit5.order;
+
+import static org.junit.Assert.assertEquals;
+
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.TestMethodOrder;
+
+@TestMethodOrder(CustomOrder.class)
+public class CustomOrderUnitTest {
+ private static StringBuilder output = new StringBuilder("");
+
+ @Test
+ public void myATest() {
+ output.append("A");
+ }
+
+ @Test
+ public void myBTest() {
+ output.append("B");
+ }
+
+ @Test
+ public void myaTest() {
+ output.append("a");
+ }
+
+
+ @AfterAll
+ public static void assertOutput() {
+ assertEquals(output.toString(), "AaB");
+ }
+}
diff --git a/testing-modules/junit-5/src/test/java/com/baeldung/junit5/order/OrderAnnotationUnitTest.java b/testing-modules/junit-5/src/test/java/com/baeldung/junit5/order/OrderAnnotationUnitTest.java
new file mode 100644
index 0000000000..3d931a4158
--- /dev/null
+++ b/testing-modules/junit-5/src/test/java/com/baeldung/junit5/order/OrderAnnotationUnitTest.java
@@ -0,0 +1,37 @@
+package com.baeldung.junit5.order;
+
+import static org.junit.Assert.assertEquals;
+
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.MethodOrderer.OrderAnnotation;
+import org.junit.jupiter.api.Order;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.TestMethodOrder;
+
+@TestMethodOrder(OrderAnnotation.class)
+public class OrderAnnotationUnitTest {
+ private static StringBuilder output = new StringBuilder("");
+
+ @Test
+ @Order(1)
+ public void firstTest() {
+ output.append("a");
+ }
+
+ @Test
+ @Order(2)
+ public void secondTest() {
+ output.append("b");
+ }
+
+ @Test
+ @Order(3)
+ public void thirdTest() {
+ output.append("c");
+ }
+
+ @AfterAll
+ public static void assertOutput() {
+ assertEquals(output.toString(), "abc");
+ }
+}