1

我正在尝试使用 PAX Exam 为捆绑包设置测试。

在用 注释的方法中Configuration,我设置了在运行测试之前必须加载的不同包。但是,被测捆绑包还期望通过 Config Admin 服务提供配置。

在 Eclipse 之外,我将 Apache Felix 框架与 Config Admin 和 File Install 一起使用,以便自动加载包 + 配置。

如何使用 PAX 考试提供配置信息?

谢谢,米凯尔

4

2 回答 2

3

这很简单,只需将配置管理服务注入您的测试并在您的设置方法中进行配置。可以在 pax web 项目中找到一个工作示例。看看这个链接

于 2014-02-19T19:07:19.640 回答
0

不幸的是,eclipse 没有将他们的包发布到 maven repo 中。您可以做的是在 maven 中央存储库中搜索它们,或者以防万一您找不到在本地 maven 存储库中安装 Eclipse IDE 随附的所需捆绑包,然后在 pax-exam 配置中引用它们。像这样:

protected static Option[] baseConfiguration(Option... extraOptions) {
    Option[] options = options(
            cleanCaches(),
             when(isEquinox()).useOptions(
                    mavenBundle("org.lunifera.osgi",
                            "org.eclipse.osgi.services",
                            "3.4.0.v20131120-1328").startLevel(1),
                    mavenBundle("org.lunifera.osgi",
                            "org.eclipse.equinox.ds",
                            "1.4.200.v20131126-2331").startLevel(2),
                    mavenBundle("org.lunifera.osgi",
                            "org.eclipse.equinox.cm",
                            "1.1.0.v20131021-1936").startLevel(2), ....

public static boolean isEquinox() {
    return "equinox".equals(System.getProperty("pax.exam.framework"));
}

public static boolean isFelix() {
    return "felix".equals(System.getProperty("pax.exam.framework"));
}
于 2014-02-20T14:53:13.640 回答