未找到类:IntelliJ中的空测试套件

问题

我刚刚在我的大学开始计算机科学课程,而且我在使用IntelliJ时遇到了一些问题。当我尝试运行单元测试时,我收到了消息

Process finished with exit code 1
Class not found: "edu.macalester.comp124.hw0.AreaTest"Empty test suite.

我还在屏幕左侧看到一条标题为"未找到测试"的消息。我的测试代码在这里:

package edu.macalester.comp124.hw0;


import org.junit.Test;
import static org.junit.Assert.*;

public class AreaTest {

    @Test
    public void testSquare() {
    assertEquals(Area.getSquareArea(3.0), 9.0, 0.001);
    }

    @Test
    public void testCircle() {
    assertEquals(Area.getCircleArea(3.0), 28.2743, 0.001);
    }
}

我的项目代码在这里:

package edu.macalester.comp124.hw0;

import java.lang.Math;
public class Area {

/**
 * Calculates the area of a square.
 * @param sideLength The length of the side of a square
 * @return The area
 */
public static double getSquareArea(double sideLength) {
    // Has been replaced by correct formula
    return sideLength * sideLength;
}

/**
 * Calculates the area of a circle.
 * @param radius The radius of the circle
 * @return The area
 */
public static double getCircleArea(double radius) {
    // Replaced by correct value
    return radius * 2 * Math.PI;
}

}

我怎样才能让我的测试工作?提前致谢。我正在使用最新版本的IntelliJ IDEA CE。


#1 热门回答(78 赞)

有同样的消息。我不得不删除运行/调试配置。

在我的情况下,我之前将单元测试作为本地测试运行。之后我将测试移到androidTest包并尝试再次运行它。 Android Studio记住了上次运行的配置,因此它尝试再次运行它作为产生相同错误的本地单元测试。

删除配置并再次运行测试后,它生成了一个新的配置并运行。

enter image description here


#2 热门回答(30 赞)

我去了

File -> Invalidate Caches/Restart...

然后它对我有用。


#3 热门回答(18 赞)

我遇到过同样的问题。我重建了项目,它帮助了我。

转至Build - >Rebuild Project

之后,如果你使用Maven工具,我建议使用选项Reimport All Maven Projects

如果没有帮助,请尝试其他可能的解决方案:

  • 转到文件 - >使高速缓存/重新启动无效 - >无效并重新启动

要么:

  • 在你的Maven项目结构中src / main / java右键单击java目录并选择选项Mark目录为 - > Sources Root同样用test目录做同样的事情:src / test / java右键单击java目录并选择选项Mark目录为 - >测试源根

要么:

  • 转到运行 - >编辑配置,然后在JUnit中删除测试配置。应用更改。之后尝试运行测试。应自动创建新配置。

要么:

  • 转到文件 - >项目结构,选择模块,然后选择适当的模块并转到路径选项卡。检查选项:单选按钮应选择使用模块编译输出路径。输出路径应该在项目中。测试输出路径也应该是项目中的目录。例如,它看起来类似:输出路径:C:\ path \ to \ your \ module \ yourModule \ target \ classes测试输出路径:C:\ path \ to \ your \ module \ yourModule \ target \ test-classes排除输出应取消选择路径。