在 Intellij 下使用 Groovy 测试 Java 代码:无法解析类 GroovyTestCase

新手上路,请多包涵

我需要为一些 Java 代码编写一个简短的测试。我使用 CTRL+SHIFT+T 用 IntelliJ 生成了一个,并选择“Groovy JUnit”作为测试库,然后编写了以下测试:

 package util
class FibonacciHeapTest extends GroovyTestCase {
    FibonacciHeap<Integer> heap

    void setUp() {
        super.setUp()
        heap = new FibonacciHeap<>()
    }

    void testAddInOrder() {
        testForItems 1..1000
    }

    private void testForItems(Range<Integer> items) {
        items.each {heap << it}
        assertEquals heap.size, items.to
        items.each {assertEquals heap.remove(), it}
    }
}

但是,当我在项目窗口中右键单击测试用例时,我没有获得通常对 JUnit 测试执行的“运行所有测试”选项,并且编译器抛出以下错误:

 Information:2/4/15 8:15 PM - Compilation completed with 2 errors and 0 warnings in 2 sec
/home/patrick/IdeaProjects/hackerrank/src/test/java/util/FibonacciHeapTest.groovy
Error:(3, 1) Groovyc: unable to resolve class util.FibonacciHeap
Error:(9, 1) Groovyc: unable to resolve class GroovyTestCase

尝试导入 GroovyTestCaseFibonacciHeap 手动导致相同的错误。当我让自动完成为我完成名称时,IntelliJ 不会添加任何导入语句,就像通常使用 Java 代码一样。

我究竟做错了什么?

原文由 Patrick Collins 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 882
2 个回答

这对我有用:

  • 打开 Gradle 窗口(在我的例子中是右侧)
  • 点击刷新按钮
  • 完毕

截屏

原文由 Bipi 发布,翻译遵循 CC BY-SA 3.0 许可协议

我在 IntelliJ 中创建测试类时遇到了类似的问题,并且在 com.company 文件夹(我有我想要测试的类)之外创建新目录时解决了这个问题。

  1. 在与 src 文件夹相同的级别上为测试类创建一个新目录
  2. 右键单击您的新测试目录,然后“将目录标记为”->“测试资源根目录”
  3. 现在创建一个测试类,它应该会自动添加到您的测试目录中。

在此处输入图像描述

原文由 ellpei 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题