JUnit5:无法导入断言

时间:2017-01-05 19:38:40

标签: java unit-testing intellij-idea

我试图使用JUnit5来创建一些基本的单元测试。我转到我的Analyzer.java课程并获得用于创建测试的弹出窗口。我点击Create New Test,将测试库设置为JUnit5。我检查了一堆方法来生成测试方法并点击OK。

所以现在我有一个AnalyzerTest.java文件,顶部有:

import static org.junit.jupiter.api.Assertions.*;

不幸的是,Assertions是红色的(这是在IntelliJ IDEA中)。当我盘旋时,它说"找不到符号断言"。同样,我有:

 @org.junit.jupiter.api.Test

在每个测试方法之前和我悬停时,我得到"无法解析符号Test"

我只是想创建然后运行一些单元测试,但显然我做错了。

有什么想法吗?

谢谢!

4 个答案:

答案 0 :(得分:2)

摇篮

将以下依赖项添加到Gradle:

 testCompile("org.junit.jupiter:junit-jupiter-api:5.0.1")

在您的依赖项下。

    dependencies {
testCompile("org.junit.jupiter:junit-jupiter-api:5.0.1")

答案 1 :(得分:1)

我不知道您正在使用Maven或Gradle。但是,如果您使用的是Maven,则只需在标签之间添加以下依赖项即可。如果您需要更多帮助,请告诉我。我在下面使用了较旧的版本,您可以从https://mvnrepository.com查看最新版本并更新pom脚本。

<!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-engine -->
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-engine</artifactId>
            <version>5.4.0</version>
            <scope>test</scope>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api -->
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-api</artifactId>
            <version>5.4.0</version>
            <scope>test</scope>
        </dependency>

答案 2 :(得分:0)

Maven

如果使用Maven,请确保在dependency元素内指定一个dependencies元素。

<!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter -->
<dependency>
    <groupId>org.junit.jupiter</groupId>
    <artifactId>junit-jupiter</artifactId>
    <version>5.4.0-RC1</version>
    <scope>test</scope>
</dependency>

如果您想在与测试相关的类之外使用这些断言,请在常规应用程序类中删除<scope>test</scope>元素。

请注意,从JUnit 5.4.0开始,我们可以指定新的junitjupiter的单个Maven工件,这反过来将为您的项目提供8个库。如果仅编写JUnit 5测试(Jupiter测试引擎),而不是“老式” JUnit 4测试或其他测试引擎,则非常方便。

如果使用Gradle而不是Maven,请参见Answer by RileyManda

答案 3 :(得分:0)

如果使用IntelliJ-IDEA,请确保测试文件位于 Test Sources根目录中。
因为我的项目没有路径src/test/java,所以当我使用 Ctrl + Shift + T 添加测试文件时,它会已添加到src/main/java ...

请参见intellij support post