Maven 2 Eclipse插件的二进制输出和测试

Maven 2 Eclipse插件的二进制输出和测试,maven-2,junit,eclipse-plugin,surefire,tycho,Maven 2,Junit,Eclipse Plugin,Surefire,Tycho,我正在开发一个Eclipse插件,我使用maven来协调我的源代码结构。为了编译这个插件,我使用了用于maven的tycho扩展。然而,我想知道如何执行Unitest 我想使用surefire插件进行测试,因为我还使用sonar服务器进行源代码质量管理。如果我使用eclipse测试插件作为包目标,那么将应用UnitTests。但是,我想使用默认的surefire插件来应用UnitTest 现在我发现,包含我的unittest包的src/test/java被正确读取和编译,但写入了错误的输出文件夹

我正在开发一个Eclipse插件,我使用maven来协调我的源代码结构。为了编译这个插件,我使用了用于maven的tycho扩展。然而,我想知道如何执行Unitest

我想使用surefire插件进行测试,因为我还使用sonar服务器进行源代码质量管理。如果我使用eclipse测试插件作为包目标,那么将应用UnitTests。但是,我想使用默认的surefire插件来应用UnitTest

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

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

谢谢你的帮助

问候,,
Florian

与标准maven项目不同,eclipse插件/OSGi捆绑包的约定是让测试驻留在单独的项目中。这是因为OSGi中没有maven依赖范围“测试”。 因此,将测试与测试中的代码放在同一个项目中会迫使您将测试代码/依赖项与生产代码/依赖项混为一谈

正如您所提到的,Tycho提供了一个单独的maven打包类型“EclipseTestPlugin”,您应该将其用于专用的测试插件/片段。看


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

谢谢您的回答。我知道了如何运行测试,而且效果很好,所以我不能在Sonar中添加单元测试统计数据,但这并不重要。