Как использовать TestProbe в качестве дочернего актера в тестах akka?

При тестировании некоторого родительского актора было бы удобно, если бы любые созданные им дочерние акторы были TestProbes. Это может быть достигнуто, как это предлагается в документах, путем:

Экстернализация детского творчества от родителя

Однако это не работает для тестов, включающих остановку дочерних акторов, потому что это может остановить только непосредственный родитель актора.

Есть ли какая-либо другая техника, которая будет работать здесь?


person tonicsoft    schedule 06.05.2019    source источник
comment
Как остановить детей-актеров? Не могли бы вы привести пример кода?   -  person mkUltra    schedule 30.05.2019


Ответы (1)


Во-первых, изолируйте создание дочернего элемента от метода внутри субъекта, который вы хотите протестировать.

Затем для тестирования создайте подкласс тестируемого субъекта и переопределите этот метод, чтобы он возвращал TestProbe.

person Rob Crawford    schedule 05.06.2019