"junit.framework中的断言已被弃用" - 接下来有什么用?

gav*_*koa 120 junit junit4

我将版本junit升级到4.11并得到:

[WARNING] [deprecation] Assert in junit.framework has been deprecated
[WARNING] [deprecation] Assert in junit.framework has been deprecated
....
Run Code Online (Sandbox Code Playgroud)

如何迁移?

Ale*_*ger 218

因为它似乎断言类已经从移动junit.frameworkorg.junit.AssertJUnit中4.0 -您可以使用相反,它是不会被弃用.

  • 我怎么会告诉eclipse永远不再使用已弃用的`junit.framework`? (9认同)
  • to atrioom:Window»Preferences»Java»Appearence»Type Filters,然后添加junit.framework.Assert.* (5认同)
  • @atrioom:我想你也可以在你的时候添加`java.awt.List`:P (3认同)

dme*_*han 76

从中更改您的import语句

import junit.framework.Assert;
Run Code Online (Sandbox Code Playgroud)

import org.junit.Assert; 
Run Code Online (Sandbox Code Playgroud)

这将纠正您的JUnit弃用警告.


Sal*_*nna 7

两者都被贬低:

junit.framework.Assert.assertThat
org.junit.Assert.assertThat
Run Code Online (Sandbox Code Playgroud)

根据文档,使用替代:

org.hamcrest.MatcherAssert.assertThat
Run Code Online (Sandbox Code Playgroud)

  • 但“hamcrest”是一个单独的项目(并抛出另一个异常来指示失败)。您能澄清一下 https://junit.org/junit5/docs/current/api/org.junit.jupiter.api/org/junit/jupiter/api/Assertions.html 是 JUnit 5 的目的是什么吗? (2认同)

小智 5

仅供参考:您可以在apiwave(http://apiwave.com/java/api/junit.framework.Assert)上自动检查,并看到junit.framework.Assert的替代品是org.junit.Assert


Sha*_*ain 5

面对此问题后,我尝试了多种方法来解决此问题,但一次又一次失败。

好东西是:我junit-4.12.jar这里下载文件,并将jar文件添加到文件libs夹下项目部分。如果项目中以前存在任何类型的Junit依赖项,请从build.gradleand build+ clean项目中删除它。

它为我工作。希望它对您有用。

注意:请看一下我在下面附加的图像。

谢谢

在此处输入图片说明