assert断言机制

jvm参数: -ea

根据阿里java开发手册:

单元测试应该是全自动执行的,并且非交互式的。测试用例通常是被定期执行的,执 行过程必须完全自动化才有意义。输出结果需要人工检查的测试不是一个好的单元测试。单元 测试中不准使用 System.out来进行人肉验证,必须使用 assert来验证。 

测试代码:

public class test {
    public static void main(String[] args) {
        numTest1(0);
        assert false;
        numTest2(0);
    }
    private static void numTest1(int i) {
        //assert i<3;
        System.out.println("test.numTest1()");
    }
    private static void numTest2(int i) {
        //assert i>3;
        System.out.println("test.numTest2()");
    }
}

assert后如果为false,则程序抛出java.lang.AssertionError,程序暂停,输出[错误信息]。

户枢不蠹,流水不腐

原文地址:https://www.cnblogs.com/yunianzeng/p/13180954.html