• Unit 5 中的前置条件(assumptions【假设】)类似于断言,不同之处在于不满足的断言assertions会使得测试方法失败,而不满足的前置条件只会使得测试方法的执行终止
    • 前置条件可以看成是测试方法执行的前提,当该前提不满足时,就没有继续执行的必要。 ```java @DisplayName(“前置条件”) public class AssumptionsTest { private final String environment = “DEV”;

      @Test @DisplayName(“simple”) public void simpleAssume() {

      1. assumeTrue(Objects.equals(this.environment, "DEV"));
      2. assumeFalse(() -> Objects.equals(this.environment, "PROD"));

      }

      @Test @DisplayName(“assume then do”) public void assumeThenDo() {

        assumingThat(
            Objects.equals(this.environment, "DEV"),
            () -> System.out.println("In DEV")
        );
      

      } }

    ```

    • assumeTrue 和 assumFalse 确保给定的条件为 true 或 false,不满足条件会使得测试执行终止。
    • assumingThat 的参数是表示条件的布尔值和对应的 Executable 接口的实现对象。只有条件满足时,Executable 对象才会被执行;当条件不满足时,测试执行并不会终止。