java之断言、测试(JUnit)与调试

断言(assertion)

assert 表达式;
assert 表达式:信息;
若表达式不为true则程序会产生异常并产生错误信息
例:

public Assertion{
    public static void main(String[] args){
        assert operation(3,4)==5:"算法错误";
    }
    public static double operation(double x,double y)
    {
        return Math.sqrt(x*x + y*y);
    }
}

注:只有在jdk1.4及以上版本中才可以使用断言。
在早期的 jdk版本(1.4)中编译时要通过-source选项来指明版本,如:
javac -deprecation -source 1.4 -classpath.Assertion.java
在运行时要使assert起作用,需要使用选项-ea(-enableassertions),如:
java -ea -classpath.Assertion

Junit

大多数集成开发工具都提供了对Junit的支持。
在Eclipse中:
1.项目右键-New-Junit Test Case
2.项目右键-Run as-Junit Test
在NetBeans中:
1.项目右键-新建-Junit测试
2.运行-测试/快捷键Alt+F6

/*测试中常用的语句

fail(信息);//程序出错
assertEquals(参数1,参数2);//程序需要保证两个参数相等
assertNull(参数);//参数需为NULL

*/

//assertEquals示例
assertEquals(a.sum(0,100),100);//测试其中数据结果是否正确(选几组即可证明)
assertEquals(a.sum(1,2),a.sum(2,1));//测试是否满足交换律

调试(debug)

一般逻辑错误无法由编译器发现,就需要通过调试
1.项目-右键-debug as-java application(若需命令行参数则选择debug configurations)
2.打开调试视图(debug perspective)结束后再点Java perspective就可以回去了

调试的三种手段:断点(breakpoint)、跟踪(trace)和监视(watch)
切换断点:Eclipse:Ctrl+Shift+B(和搜狗热键冲突) NetBeans:Ctrl+F8
跟踪:

操作 Eclipse Netbeans
逐语句执行 F5 F7
逐过程执行 F6 F8
跳出函数 F7 Ctrl+F7
运行到光标处 Ctrl+R F4

监视:
即时监视:鼠标指向变量
快速监视:右键-inspect
添加监视:右键-watch

你可能感兴趣的:(java,junit,java,测试,assert,debug)