如何将 JUnit 测试打包到 OSGI 包中,以便使用 Apache Felix 运行它们?是否有标准实现或一些解决方法来为 JUnit 测试创建单独的包并在激活方法中运行它们?
编辑:我忘了说这个项目是用 Maven 创建的。
更新:感谢您的回答。我使用了 junit4osgi 框架,它非常有用。
Apache Sling 测试工具的org.apache.sling.junit.core 包允许您在 OSGi 实例中运行 JUnit 测试。它是 Sling 项目的一部分,因为它是在那里创建的,但应该在没有任何 Sling 依赖项的任何 OSGi 环境中运行。
如果它用于运行单元测试,您可能想看看Pax Exam。
您可能想看看BndTools是如何做到这一点的。它允许您创建可以在 OSGi 容器中执行的集成 OSGi 测试。