我在Maven方面做得不多,但我了解基本知识。我们使用Tycho来构建RCP插件,我想知道为什么Tycho使用integration-test
阶段来执行捆绑测试。
是否可以将某些类型的测试绑定到Tycho的Maven的test
阶段,而不是integration-test
阶段?
如果是,如何?
Tycho在OSGi容器中执行测试,这需要编译的类已经打包为OSGi捆绑包。打包只发生在package
阶段,因此需要稍后执行测试。因此,默认情况下,tycho-surefire-plugin
在integration-test
阶段执行测试。
如果您可以在Eclipse中以"JUnit测试"(而不是"JUnit插件测试")的形式运行测试,那么您的代码和任何依赖项都不需要OSGi容器。在这种情况下,您还可以使用maven-surefire-plugin
运行测试。默认情况下,此插件在test
阶段运行。我发现这个博客描述了实现这一点所必需的配置。