Настройка IntelliJ, поэтому для запуска тестов требуется определенный файл конфигурации.
Я использую Play Framework 2.3 и IntelliJ IDEA 14. Я использую плагин Mailer в своем приложении. Я написал несколько функциональных тестов, которые отлично работают, когда я запускаю команду test
в консоли SBT, после добавления этой строки в build.sbt:
javaOptions in Test += "-Dconfig.file=conf/application.test.conf"
И этот файл в файл conf/application.test.conf:
smtp.mock=yes
К сожалению, когда я запускаю тесты непосредственно из IntelliJ, я получаю эту ошибку:
java.lang.RuntimeException: smtp.host needs to be set in application.conf in order to use this plugin (or set smtp.mock to true)
Я попытался запустить эти тесты с аргументом VM -Dconfig.file=conf/application.test.conf
без успеха.
Вот два примера тестов, которые я пытаюсь выполнить:
@Test
public void testWithServer() {
running(testServer(3333), () -> {
assertThat(WS.url("http://localhost:3333").get().get(1000).getStatus()).isEqualTo(OK);
});
}
@Test
public void testWithBrowser() {
running(testServer(3333), HTMLUNIT, browser -> {
browser.goTo("http://localhost:3333");
assertThat(browser.$("title").getText()).isEqualTo("Welcome");
});
}
Может ли кто-нибудь помочь мне в этом?
Спасибо!
Ответы
Ответ 1
Если я ошибаюсь, параметр config.file
и, следовательно, файл conf/application.test.conf
используется SBT. Таким образом, IntelliJ IDEA при запуске теста не загружает его и содержащиеся в нем параметры, даже если вы указываете параметр config.file
через текстовое поле "Параметры виртуальной машины" . Вместо этого вы должны поместить параметр -Dsmtp.mock=yes
(любые другие параметры, которые находятся в файле application.test.conf
) в текстовое поле "Параметры виртуальной машины" .
Если это сработает, вы можете добавить аргументы (аргументы) в текстовое поле "Параметры виртуальной машины" в параметры JUnit в группе "По умолчанию" в диалоговом окне "Запуск/отладка конфигурации", чтобы все новые тесты, которые вы создали, предварительно установили.
Ответ 2
В настройках запуска выберите JUnit, а затем нажмите гаечный ключ, чтобы изменить конфигурацию по умолчанию. Затем в параметрах VM добавьте -Dconfig.file=/absolute/path/to/application.test.conf
.