OSGI 测试框架 - 一些观察。
我正在编写一个使用 OSGI 的系统。然而,所有流行的测试框架(Spring-OSGI、PaxExam)即使是最简单的测试也需要大量的人工制品。
愿望清单/目标
理想情况下,我想要一个使用 TinyBundle 组装捆绑包并将它们提供给框架的测试。然后框架将完成启动容器、部署、运行每个测试、更新 ui 以显示结果等繁重工作。
从表面上看,PAX-EXAM 似乎可以满足这一点,但它有额外的要求,我无法在 Eclipse 中解决这些要求。我的问题是:
- 每个捆绑包都需要一个单独的项目。
- 每个项目在 $project/meta-inf/ 中都有一个 manifest.mf。
理想情况下,我想将我所有的清单和“内部”类捆绑在测试的单独子包中,而不是将它们分散在各自的项目中。
我发现即使提供的捆绑包的内容相同,在执行测试时也无法将所有内容打包到一个项目中。但是,如果我将所有内容分成单独的项目,那么东西就可以了。
马文
我希望避免使用 maven,因为这意味着一个更复杂的系统最终需要构建、部署到 repo 中,即使在自动化的情况下,最终也会使事情变得更加缓慢。这会与我使用 Infinitest 冲突,后者会自动检测更改的类并执行正确的测试。
Eclipse 项目插件启动配置。
这种方法需要在执行 junit 测试之前选择要部署的包。当然,这仅适用于具有单独项目且每个捆绑包具有一对一映射的情况。这再次违背了我将所有测试依赖包合并到一个项目下的尝试。
怎么做到呢 ???
- 我怎样才能做到这一点?
- 这实际上可能吗?
- 什么是最简单的选择?