0

我正在开发一个 Eclipse 插件,我使用 maven 来协调我的源结构。为了编译插件,我使用 maven 的 tycho 扩展。但是,我想知道如何执行unitests。

我想使用 surefire 插件进行测试,因为我还使用声纳服务器进行源代码质量管理。如果我使用 eclipse-test-plugin 作为包目标,则应用单元测试。但是,我想使用默认的 surefire 插件来应用单元测试。

现在我发现包含我的 unittest 包的 src/test/java 被正确读取和编译,但写入错误的输出文件夹。我需要在目标/测试类中进行测试。但是它们被编译为目标/类。

由于我是 Eclipse 插件开发和 maven 的新手,所以我不知道如何将测试写入正确的输出文件夹。我已经尝试添加和更改 eclipse-plugin 项目的 build.properties。它也适用于不是插件项目且不使用 tycho 的其他项目。

任何帮助表示赞赏。

问候,弗洛里安

4

1 回答 1

1

与标准 maven 项目不同,eclipse 插件/OSGi 包的约定是将测试驻留在单独的项目中。这是因为 OSGi 中没有 maven 依赖范围“测试”之类的东西。因此,将您的测试与被测代码保持在同一个项目中将迫使您将测试代码/依赖项与生产代码/依赖项混合在一起。

正如您所提到的,Tycho 提供了一个单独的 maven 打包类型“eclipse-test-plugin”,您应该将其用于专用的测试插件/片段。请参阅https://docs.sonatype.org/display/TYCHO/PackagingTypes

Tycho 不支持驻留在同一项目中的普通单元测试。

于 2011-01-10T09:43:21.447 回答