您的位置:首页 > 编程语言 > Java开发

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

2017-11-28 14:20 417 查看

断言(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

跟踪:

操作EclipseNetbeans
逐语句执行F5F7
逐过程执行F6F8
跳出函数F7Ctrl+F7
运行到光标处Ctrl+RF4
监视:

即时监视:鼠标指向变量

快速监视:右键-inspect

添加监视:右键-watch
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  junit java 测试 assert debug