我进行了许多测试,它运行得很好,直到我编写Global对象:
@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", "[email protected]");
running(fakeApplication(additionalConfiguration), new Runnable() {
...
关于testing - 全局对象onStart无法通过我的所有测试,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17024371/