...

/

Assertion: assertTimeout()

Assertion: assertTimeout()

Learn how to use the assertTimeout() method in JUnit 5.

The assertTimeout() method

The assertTimeout() method asserts that execution of the given Executable completes before the given timeout. The timeout value is specified as a java.time.Duration object.

There are basically three useful overloaded methods for assertTimeout:

Press + to interact
assertTimeout(Duration timeout, Executable executable)
assertTimeout(Duration timeout, Executable executable, String message)
assertTimeout(Duration timeout, Executable executable, Supplier<String>
messageSupplier)

Examples of assertTimeout()

Let’s look at some examples of the methods above:

Press + to interact
import static org.junit.jupiter.api.Assertions.assertTimeout;
import java.time.Duration;
public class TimeoutTest {
@Test
@DisplayName("Simple assertTimeout")
public void simpleTimeout()
{
assertTimeout(Duration.ofSeconds(5), () -> Thread.sleep(3000));
}
}

Note: The methods above give the same output ...