软件编程
位置:首页>> 软件编程>> java编程>> JAVA IDEA 打开assert 设置方式

JAVA IDEA 打开assert 设置方式

作者:柠心语冰  发布时间:2022-08-19 13:48:49 

标签:JAVA,IDEA,assert

JAVA IDEA 打开assert 设置

概念

(此处为借鉴前辈们的讲解)

断言(Assertion)是Java中一条语句,包含一个布尔表达式,当该布尔值为真,程序则被认为是正确的;当布尔值为假,则系统会抛出错误。

断言两种语句形式

(此处依旧为借鉴前辈们的讲解)

assertExpression1 ;
assertExpression1 : Expression2 ;`
  • Expression1是一个布尔表达式,作为断言的真假。

  • Expression2是一个有返回值的表达式,用来提供详细的错误信息。

当没有Expression2时,默认抛出没有详细信息的 AssertionError。

JAVA 中的 assert(idea)

在写assert语句以后运行的时候发现并没有按预期的“报错”,多半是因为没有打开idea中的assert

关于怎么打开其实很简单:Run—> Edit Configurations —>AsserTest —>VM options —>输入“-ea”就可以了。

JAVA IDEA 打开assert 设置方式

但是!

我在打开我的Edit Configurations时。。。并没有“AsserTest”。于是再迷茫了一秒钟后,我自己创建了“AsserTest”,并成功找到“ADD VM options”,然后再弹出的对应个位置输入了“-ea”

然后就可以正常运行Asser了。

JAVA IDEA 打开assert 设置方式

这是相关语句以及最后报错的输出:

(解释一下 “isUp(a)” 是我自己写的小函数,此时返回值为 false)

assert isUp( a ) : "is not up!!" ;

JAVA IDEA 打开assert 设置方式

JAVA 关键字 assert

为什么assert 两个完全不相等的对象或者基本类型却不报错,例如图下

assert new Object() == new Object();
assert 1 == 2;

预期的会报错,结果是没有任何反应

JAVA IDEA 打开assert 设置方式

究其原因其实是jvm 启动未添加 -ea 参数用来开启断言 一般来说,通过IDE开发工具(IDEA)在执行测试方式时会主动打开 -ea

java -ea ...省略... -<className>

但如果没有使用这些工具将面临比较尴尬的困境, 而且问题比较隐蔽不容易察觉 所以建议避免使用assert执行测试方法,改用Junit Assertions.assert*()执行测试方法

来源:https://blog.csdn.net/qq_41620270/article/details/122817069

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com