如何设置 Groovy + Eclipse + Junit4?

Posted

技术标签:

【中文标题】如何设置 Groovy + Eclipse + Junit4?【英文标题】:How to setup Groovy + Eclipse + Junit4? 【发布时间】:2010-09-05 19:30:41 【问题描述】:

我正在开发一个小型 web 应用程序,我想使用 Groovy 为我的应用程序编写一些单元测试。我的大部分编码都是在 Eclipse 上完成的,我真的很想用 Eclipse 中的图形测试运行器运行所有单元测试(我真的很喜欢绿色条:))

遗憾的是,经过 4 小时的试错,我仍然无法正确设置。我尝试使用 Eclipse Junit4 测试运行程序运行一个 Groovy 文件,该文件带有注释的方法,用于使用 @Test 进行测试。但它一直在抱怨NoClassDefFoundException

有人可以帮忙吗?

这是我的 groovy 文件的内容,名为 simpleTest.groovy

import org.junit.Test
import static org.junit.Assert.assertEquals

class simpleTest
  @Test
  void trial()
    assertEquals 6, 3+3
  

有人可以帮忙吗?

【问题讨论】:

这是旧版本的插件。请尝试使用 V2.0 或更高版本。请参阅下面 Robert Munteanu 的答案。 【参考方案1】:

您可能想尝试一下更新后的插件,请参阅the recent blog post 了解更多详情。此 alpha 版本的主题是提供优化的编辑/保存/编译/测试体验,这似乎正是您的用例。

【讨论】:

【参考方案2】:

我在我的环境中有这个工作,所以这里是我所拥有的简要总结:

在JUnit下的运行对话框中:

Test Tab:测试类,这个必须已经被Groovy插件编译好了。 类路径:我项目中的所有 Jar 文件以及 Groovy 库

在窗口->首选项->Java->构建路径

类路径变量:
GROOVY_ECLIPSE_HOME
= Groovy 插件的安装位置

这对我有用。

【讨论】:

【参考方案3】:

不幸的是,Groovy Eclipse 插件在提供实际有用的信息以让您知道您的设置出了什么问题时非常糟糕。我将假设您已经进行了验证以确保插件实际上正在构建您的 Groovy 文件(即,做一个没有依赖关系的示例,检查正确的输出目录等......)之后,真的很多小型配置验证...我遇到了问题,我在 Eclipse 中使用的特定“运行器”(即在“运行”菜单中)没有在那里定义写入类名称,或者由于某种原因我的项目没有将 JUnit 库依赖项正确插入其中。

最终,这可能是一个令人头疼的配置问题,但从长远来看,如果你能将其淘汰,你最终会节省一些时间并获得一些很酷的功能......

【讨论】:

【参考方案4】:

我遇到过类似的问题,正是缺少包装声明导致我遇到问题。 Groovy Eclipse 插件并没有抱怨它,但我的类存在于一个包中。将文件作为 JUnit 测试运行时出现 noClassDefError。

将包语句添加到类的顶部解决了这个问题。

【讨论】:

以上是关于如何设置 Groovy + Eclipse + Junit4?的主要内容,如果未能解决你的问题,请参考以下文章

Groovy入门(2-2)Groovy的eclipse插件安装

groovy 获取系统变量

eclipse-4.4.2安装Groovy插件(其他版本eclipse可参考)

Eclipse 中的 Grails 2.2.0 支持

Groovy的本地安装和Eclipse插件的配置

在 Grails 中使用 Groovy-Eclipse 插件进行开发