#junit #activiti
#junit #activiti
Вопрос:
Я запускаю модульные тесты для кода на основе activiti. Я сталкиваюсь с очень странным поведением.
У меня есть два отдельных тестовых файла, и тест в обоих имеет почти одинаковый код. Оба начинаются с:
ProcessEngine processEngine = ProcessEngineConfiguration
.createStandaloneProcessEngineConfiguration()
.buildProcessEngine();
Как ни странно, один из тестов успешно завершен. Но другой сбой с
ошибка:
org.h2.jdbc.JdbcSQLException: Соединение разорвано: «java.net.ConnectException: Соединение отклонено: connect: localhost»
Один тест всегда проходит, в то время как другой всегда завершается с этой ошибкой.
Что может быть причиной такого поведения?
PS: я заметил разницу. Сбой кода вызывает ‘createStandaloneProcessEngineConfiguration’ при передаче кода вызывает ‘createStandaloneInMemProcessEngineConfiguration’.
Ответ №1:
Эта проблема во многом связана с настройкой вашей базы данных. createStandaloneInMemProcessEngineConfiguration
— создаст для вас базу данных в памяти, используя конфигурацию spring, поэтому вам не придется сильно беспокоиться о ее конфигурации. однако при использовании createStandaloneProcessEngineConfiguration
он просматривает конфигурацию для внешней базы данных (которая уже должна быть настроена и запущена). когда он не находит такую конфигурацию, движок выдает исключения, как вы упомянули.