Я работаю над проектом, основанным на Akka Persistent FSM. В частности:Как протестировать Акка Настойчивый актер
Я хочу знать, как лучше всего структурировать тестовые примеры для независимости? Так как изменения состояния сохраняются (это недостаточно объяснено в документации, но можно увидеть here), это может быть сложно, чтобы мои постоянные участники всегда начинались в чистом состоянии. Нужно ли вручную создавать перезагрузку в протоколе FSM моего актера? Если это так, это кажется не идеальным, поскольку это новое поведение, которое требует тестирования самостоятельно.
Каков наилучший способ управления журналом при тестировании? Есть ли простой способ настроить использование другого журнала для тестирования, не делая этого выбора явно в самом дизайне актера? В разделе документов Plugin TCK упоминается удаление всего файла журнала вручную. Это кажется разумным для тестирования самих плагинов, но похоже на ненужное низкоуровневое решение для кода приложения. Возможно, мне нужно явно обратиться к журналу asyncDeleteMessagesTo в тестовом срыве? Это все еще кажется довольно низким уровнем, но, возможно, это просто инфраструктура, которая еще не была встроена в библиотеку.
Очень информативный - я продолжу этот метод. Должен ли я дублировать все из моего основного 'application.conf', или я могу просто предоставить переопределения? На данный момент конфигурация журнала - это все, что я делаю, но мне интересно заранее, когда я в конечном итоге добавлю больше настроек. Мне не нравится концепция инъекции 'persistenceId', но если это лучшее, что я могу сделать, тогда это путь. – acjay
@ mattinbits, можете ли вы отправить пример, без необходимости ручного удаления журнала? он обрабатывается плагином inmemory? – SaKou
@SaKou это в природе его пребывания в памяти. Как только процесс умирает, память об этом процессе не сохраняется. – mattinbits