如何在Intellij中指定Dropwizard配置文件进行单元测试?

时间:2016-10-27 22:25:58

标签: intellij-idea junit dropwizard

我正在使用IntelliJ Idea作为我的IDE在Dropwizard 0.9中开发一个应用程序。我配置了运行配置,它传递命令行参数“server ./path/to/config.yml”以指定要运行的配置文件。

但是,当我尝试运行单元测试时,我无法确定如何将此配置文件路径传递给服务器。 “运行/调试配置”对话框具有“程序参数”字段,但它被永久禁用(与其相邻的编辑按钮不执行任何操作)。

如何启用程序参数,或者,是否有其他方法为测试指定配置文件?

1 个答案:

答案 0 :(得分:2)

如果你的config.yml在项目的根文件夹中,只需在IDE中设置 server config.yml 即可。看一下这个video

如果您想从项目的根文件夹访问config.yml,只需将文件名传递给规则。

@ClassRule
public static final DropwizardAppRule<DWGettingStartedConfiguration> RULE
        = new DropwizardAppRule<>(DWGettingStartedApplication.class,
                "config.yml");

此外,可以在src / test / resources文件夹中存储集成测试的配置文件。在这种情况下,可以使用以下代码访问该文件:

/**
 * A path to test configuration file.
 */
private static final String CONFIG_PATH
        = ResourceHelpers.resourceFilePath("test-config.yml");
/**
 * Start the application before all test methods.
 */
@ClassRule
public static final DropwizardAppRule<DropBookmarksConfiguration> RULE
        = new DropwizardAppRule<>(
                DropBookmarksApplication.class,
                CONFIG_PATH);

此外,请查看我的示例项目hereherehere