Assumptions
JUnit Jupiter附带了JUnit 4提供的假设方法的一个子集,并添加了一些可以很好地用于Java 8 lambdas的假设方法。
所有的JUnit Jupiter假设都是在 org.junit.jupiter.api.Assumptions
的静态方法。
实例
- AssumptionsDemo.java
package com.github.houbb.jdk.junit5;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assumptions.assumeTrue;
import static org.junit.jupiter.api.Assumptions.assumingThat;
import org.junit.jupiter.api.Test;
/**
* @author houbinbin
* @version 1.0
* @since JDK 1.7
*/
public class AssumptionsDemo {
@Test
void testOnlyOnCiServer() {
assumeTrue("CI".equals(System.getenv("ENV")));
// remainder of test
}
@Test
void testOnlyOnDeveloperWorkstation() {
assumeTrue("DEV".equals(System.getenv("ENV")),
() -> "Aborting test: not on developer workstation");
// remainder of test
}
@Test
void testInAllEnvironments() {
assumingThat("CI".equals(System.getenv("ENV")),
() -> {
// perform these assertions only on the CI server
assertEquals(2, 2);
});
// perform these assertions in all environments
assertEquals("a string", "a string");
}
}