java assert类_关于java:警告:不推荐使用Assert类型的方法assertEquals

这篇博客讨论了在JUnit中如何处理Assert.assertEquals方法的弃用警告。作者指出,应该使用org.junit.Assert.assertEquals方法,并且在处理浮点数比较时,应使用带有delta参数的方法来处理浮点计算的不精确性。博客还提到了导入正确的JUnit库可以消除警告。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于方法Assert.assertEquals已弃用,我们现在应该使用哪种方法?

以下代码:

String arg1 ="test";

String arg2 ="me";

Assert.assertEquals(arg1, arg2);

给出以下警告:

Multiple markers at this line

The method assertEquals(String, String) from the type Assert is deprecated

The type Assert is deprecated

可能重复2个JUnit Assert类之间的差异

您使用junit.framework.Assert而不是org.junit.Assert。

谢谢....我后来发现了这个......后来我意识到它值得包括在这里作为一个问题/答案,因为它可能会出现在其他人身上,现在当他们谷歌时它们会找到它。

@BradParks,是的,你是对的。 我来到这里

对上述问题的回答提供了一些额外的背景。

对于那些也发现这个有用的人,请不要评论谢谢 - 只需提出问题和答案。meta.stackexchange.com/questions/126180/… 这不是什么大问题,但我们不希望这个答案变得混乱。

此方法也会遇到弃用警告:

org.junit.Assert.assertEquals(float expected,float actual) //deprecated

这是因为目前junit更喜欢第三个参数,而不仅仅是两个浮点变量输入。

第三个参数是delta:

public static void assertEquals(double expected,double actual,double delta) //replacement

这主要用于处理不准确的浮点计算

有关更多信息,请参阅此问题:对于double值,assertEquals的epsilon参数的含义

当我使用Junit4时

import junit.framework.Assert;

import junit.framework.TestCase;

警告信息为:不推荐使用Assert类型

当像这样导入时:

import org.junit.Assert;

import org.junit.Test;

警告消失了

可能重复2个JUnit Assert类之间的差异

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值