当前位置: 首页 > 面试题库 >

JUnit使用BigDecimal声明

后凯捷
2023-03-14
问题内容

我想在两个小数点后两位之间使用断言,我使用这个:

BigDecimal bd1 = new BigDecimal (1000);
BigDecimal bd2 = new BigDecimal (1000);
org.junit.Assert.assertSame (bd1,bd2);

但是JUnit日志显示:

expected <1000> was not: <1000>

问题答案:

assertSame测试两个对象是相同的对象,即它们是==

断言两个对象引用相同的对象。如果它们不相同,AssertionError则会抛出一个没有消息的消息。

在您的情况下,由于bd1bd2都是new BigDecimal,所以对象不相同,因此是例外。

您要使用assertEquals,测试两个对象是否相等,即.equals

断言两个对象相等。如果不是,AssertionError则会抛出一个不带消息的消息。如果期望和实际null相等,则认为它们相等。

BigDecimal bd1 = new BigDecimal (1000);
BigDecimal bd2 = new BigDecimal (1000);
org.junit.Assert.assertEquals(bd1,bd2);


 类似资料:
  • 我在4.10版本中使用junit,在1.3版本中声明了hamcrest核心,在1.3版本中声明了hamcrest库。我的问题是hamcrest库和hamcrest核心是否嵌入junit 4.10。那么junit 4.11呢?

  • 问题内容: 我有这些值来自测试 我尝试 我得到了,关于调试是。 我怎样才能断言超越使用条件 问题答案: 只是您的操作方式。还有一个过载,如果发生故障,消息是;如果要打印某某某物的大小不超过某某某物的大小,则可以使用它。 您也可以添加依赖项以使用匹配器。参见https://code.google.com/p/hamcrest/wiki/Tutorial: 这给出了类似的错误:

  • 问题内容: 我写了一些带有注释的JUnit测试。如果我的测试方法引发了一个已检查的异常,并且我想与异常一起声明该消息,是否可以使用JUnit 注释来做到这一点?AFAIK,JUnit 4.7不提供此功能,但是将来的版本会提供吗?我知道在.NET中,您可以断言消息和异常类。在Java世界中寻找类似的功能。 这就是我要的: 问题答案: 您可以将注释与一起使用,如下所示: 请注意,文档中的示例(当前)是

  • 本文向大家介绍如何在BigDecimal上使用>,=,相关面试题,主要包含被问及如何在BigDecimal上使用>,=,时的应答技巧和注意事项,需要的朋友参考一下 Class的每个对象都有一个可用来将其与另一个BigDecimal进行比较的方法。然后比较的结果,或者根据需要进行比较。阅读文档,您将找到答案。 运营商,,等只能在基本数据类型等中使用,,或它们的包装类等和。 从以下文档中: 将其与指定

  • 我的项目中有很多JUnit测试。其中一些有一些副作用,可能会影响其他测试的执行。例如,它们打开数据库连接并忘记关闭它们,然后在某个时候测试开始失败,因为它们达到了极限。我想我可以使用一些混音进行测试,我可以这样使用... ...这样当我运行它时,我会得到一个断言错误以及有关执行时间的信息。 我的意思是,检查连接是否关闭很简单,但是在每个测试类或方法中手动将代码放在和方法中似乎是个坏主意。 我认为这

  • 描述 (Description) java.math.BigDecimal.subtract(BigDecimal subtrahend)返回一个BigDecimal,其值为(this - subtrahend),其标度为max(this.scale(),subtrahend.scale())。 声明 (Declaration) 以下是java.math.BigDecimal.subtract()