Close

Junit 5 - Grouped Assertions

[Last Updated: Dec 1, 2025]

The following methods are to group multiple assertions and ensure that all of them are executed, even if one or more of the assertions fail.

public static void assertAll(Executable... executables) throws MultipleFailuresError
public static void assertAll(Stream<Executable> executables) throws MultipleFailuresError
public static void assertAll(String heading, Executable... executables) throws MultipleFailuresError
public static void assertAll(String heading, Stream<Executable> executables) throws MultipleFailuresError

Example

package com.logicbig.example;

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;

class AssertAllExamplesTest {

  @Test
  void testBasicMath() {
      assertAll("basic math",
          () -> assertEquals(4, 2 + 2),
          () -> assertEquals(9, 3 * 3),
          () -> assertTrue(10 > 5),
          () -> assertNotEquals(0, 1)
      );
  }

  @Test
  void testVariousValues() {
      assertAll("values",
          () -> assertEquals("Hello", "He" + "llo"),
          () -> assertTrue("abc".startsWith("a")),
          () -> assertFalse("xyz".contains("a")),
          () -> assertEquals(100, Integer.parseInt("100"))
      );
  }

  @Test
  void testGroupedAssertions() {
      assertAll("group",
          () -> assertAll("string checks",
              () -> assertEquals(5, "12345".length()),
              () -> assertTrue("Java".contains("J"))
          ),
          () -> assertAll("numeric checks",
              () -> assertEquals(20, 10 + 10),
              () -> assertTrue(50 > 10)
          )
      );
  }
}
mvn test -Dtest=AssertAllExamplesTest

Output

D:\example-projects\junit-5\junit-5-assertions\junit-5-grouped-assertions>mvn test -Dtest=AssertAllExamplesTest
[INFO] Scanning for projects...
[INFO]
[INFO] ----------< com.logicbig.example:junit-5-grouped-assertions >-----------
[INFO] Building junit-5-grouped-assertions 1.0-SNAPSHOT
[INFO] from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- resources:3.3.1:resources (default-resources) @ junit-5-grouped-assertions ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory D:\example-projects\junit-5\junit-5-assertions\junit-5-grouped-assertions\src\main\resources
[INFO]
[INFO] --- compiler:3.14.1:compile (default-compile) @ junit-5-grouped-assertions ---
[INFO] Nothing to compile - all classes are up to date.
[INFO]
[INFO] --- resources:3.3.1:testResources (default-testResources) @ junit-5-grouped-assertions ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory D:\example-projects\junit-5\junit-5-assertions\junit-5-grouped-assertions\src\test\resources
[INFO]
[INFO] --- compiler:3.14.1:testCompile (default-testCompile) @ junit-5-grouped-assertions ---
[INFO] Recompiling the module because of added or removed source files.
[INFO] Compiling 1 source file with javac [debug target 25] to target\test-classes
[INFO]
[INFO] --- surefire:3.2.5:test (default-test) @ junit-5-grouped-assertions ---
[INFO] Using auto detected provider org.apache.maven.surefire.junitplatform.JUnitPlatformProvider
[INFO]
[INFO] -------------------------------------------------------
[INFO] T E S T S
[INFO] -------------------------------------------------------
[INFO] Running com.logicbig.example.AssertAllExamplesTest
[INFO] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.059 s -- in com.logicbig.example.AssertAllExamplesTest
[INFO]
[INFO] Results:
[INFO]
[INFO] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.067 s
[INFO] Finished at: 2025-12-01T12:47:59+08:00
[INFO] ------------------------------------------------------------------------

Example Project

Dependencies and Technologies Used:

  • junit-jupiter-engine 6.0.1 (Module "junit-jupiter-engine" of JUnit)
     Version Compatibility: 5.0.0 - 6.0.1Version List
    ×

    Version compatibilities of junit-jupiter-engine with this example:

    • 5.0.0
    • 5.0.1
    • 5.0.2
    • 5.0.3
    • 5.1.0
    • 5.1.1
    • 5.2.0
    • 5.3.0
    • 5.3.1
    • 5.3.2
    • 5.4.0
    • 5.4.1
    • 5.4.2
    • 5.5.0
    • 5.5.1
    • 5.5.2
    • 5.6.0
    • 5.6.1
    • 5.6.2
    • 5.6.3
    • 5.7.0
    • 5.7.1
    • 5.7.2
    • 5.8.0
    • 5.8.1
    • 5.8.2
    • 5.9.0
    • 5.9.1
    • 5.9.2
    • 5.9.3
    • 5.10.0
    • 5.10.1
    • 5.10.2
    • 5.10.3
    • 5.10.4
    • 5.10.5
    • 5.11.0
    • 5.11.1
    • 5.11.2
    • 5.11.3
    • 5.11.4
    • 5.12.0
    • 5.12.1
    • 5.12.2
    • 5.13.0
    • 5.13.1
    • 5.13.2
    • 5.13.3
    • 5.13.4
    • 5.14.0
    • 5.14.1
    • 6.0.0
    • 6.0.1

    Versions in green have been tested.

  • JDK 25
  • Maven 3.9.11

Junit 5 - Grouped Assertions Select All Download
  • junit-5-grouped-assertions
    • src
      • main
      • test
        • java
          • com
            • logicbig
              • example
                • AssertAllExamplesTest.java

    See Also