testing - 全局对象 onStart 未能通过我的所有测试

标签 testing playframework-2.0 playframework-2.1

我进行了多次测试,它运行完美,直到我编写全局对象:

    @Override
    public void onStart(Application app) {
        Mails.plugin = app.plugin(MailerPlugin.class).email();
        Mails.from = app.configuration().getString("smtp.from");
        if (Mails.plugin != null) Logger.info("Mailer plugin successfully loaded"); 
        if (Mails.from != null) Logger.info("Mail account is " + Mails.from);

    }

我在这里加载电子邮件插件。现在,当我尝试使用 inMemoryDatabase 运行我的 fakeApplication 时,我得到一个空指针异常。可能是因为 fakeApplication 不使用配置文件,无法从该文件加载配置。请帮我解决这个问题。

最佳答案

尝试在您的 FakeApplication 中添加自定义配置参数:

Map<String, Object> additionalConfiguration = new HashMap<String, Object>();
additionalConfiguration.put("smtp.from", "foo@bar.com");

running(fakeApplication(additionalConfiguration), new Runnable() {
...

关于testing - 全局对象 onStart 未能通过我的所有测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17024371/

相关文章:

testing - vhdl中的同步/异步d型触发器

request - 当客户端取消请求或客户端套接字关闭时,如何在 Play Framework 2.1 中中止 Controller 操作?

playframework-2.0 - 游戏框架 : Helpers to generate HTML5 input (type ="email" or type ="url")?

playframework-2.0 - 在浏览器中显示来自 Controller 的图像对象

java - Play2 Java 表单中未显示链接实体 (OneToMany)

scala - 玩2.1 Scala链上多个futures和promises

spring - 如何用 cucumber 激活 Spring 启动配置文件

testing - 在开发基于 PC 的应用程序时,哪些用户安装的应用程序会造成最大的麻烦?

java - 为什么有时在 Maven 中测试期间 public static AtomicBoolean 变量为 false?

java - 在 Play+Java 中迭代 cookie