设置仅包含一个插件的eclipse插件项目的标准方法(遵循所有命名约定)是什么?我的插件项目名为com.florian.regexfindandreplace
。现在我执行以下操作:我有一个仅包含上述插件的功能项目com.florian.regexfindandreplace.feature
。然后我有另一个名为com.florian.regexfindandreplace.product
的项目,它托管了我的插件的产品文件。我需要JUnit插件测试的产品,因为在启动配置中我需要设置选项 Run As product (参见http://www.vogella.com/tutorials/SWTBot/article.html#swtbotexample_launchconfiguration)。
现在我不知道在哪里进行测试。如果我将它们放在com.florian.regexfindandreplace
项目的源文件夹中,我需要在MANIFEST.MF中添加很多必需的包,仅用于测试目的(例如org.eclipse.swtbot.swt.finder
)。所以我想避免这种情况。
目前,我的想法是让另一个插件项目com.florian.regexfindandreplace.tests
将SWTBot的所有内容添加到MANIFEST.mf中所需的包中。但是,因为我不希望com.florian.regexfindandreplace
导出任何包,所以我在测试插件项目中链接了该插件的源文件夹(虽然看起来有点难看)。在我的测试项目中,我还添加了JUnit测试,JUnit SWTBot测试和JUnit插件测试的所有源代码。
但是有没有一种标准的方法来设置这样的插件项目?你为插件项目做了什么?
答案 0 :(得分:1)
通常将插件测试放入一个片段,该片段的主机包是包含待测代码的插件。在运行时,片段将合并到主机包中,因此可以完全访问主机包的类。生产代码插件不需要导出不需要的包。在片段中指定了对测试库的依赖性,以便生产代码插件没有测试依赖性。
另见http://www.modumind.com/2007/06/20/unit-testing-plug-ins-with-fragments/