Akka:在集成测试中模拟组件的策略

时间:2016-06-10 13:01:31

标签: scala unit-testing akka integration-testing

我需要在Akka中测试一个演员,该演员是两个孩子的父母。在我的集成测试中,我需要模拟这两个孩子中的一个。两个子项都是在构造函数中创建的。我怎么能得到它?

MyParentActor {
  val childOne = ChildOne.props(...)
  val childTwo = ChildTwo.props(...)
...
}

1 个答案:

答案 0 :(得分:2)

如果您只需要在不创建其父级的情况下获取actor引用,则可以使用TestActorRef

val actorRef = TestActorRef(new ChildOne(param1, param2))

否则创建父actor并使用context.child(childName)您可以获得对childActor的引用,或者您也可以使用ActorSelection直接通过知道其逻辑路径向子actor发送消息。