2014-09-01 7 views
0

내 배우에 대한 몇 가지 테스트 케이스를 코딩하려고하는데 문제는 일부 테스트가 실패하고 실패한 이유를 알 수 없다는 것입니다.akka testkit을 사용하여 로깅받는 메시지

정상적인 시나리오에서는 내 코드가 아무런 테스트없이 잘 작동하지만, 테스트를 위해 필자는 twitter4j 라이브러리의 일부 부분을 조롱하고있어 복잡해집니다.

테스트가 실패했으며 더 이상 유용한 정보가 없습니다.

akka testkit 및 scalatest를 사용하여받은 메시지를 기록하는 방법이 있습니까? 모든받은 메시지를 기록 할 수있게하려면

답변

0

, 세 가지 당신이해야 할이 있습니다 :

1) 당신이 akka.event에서 LoggingReceive (에 대한 로깅을 사용하려는 배우에 receive 기능을 바꿈 꾸러미).

import akka.actor._ 
import akka.event.LoggingReceive 
class MyActor extends Actor{ 
    def receive = LoggingReceive{ 
    case msg => ... 
    } 
} 
:

2)

그래서 배우가 다음과 같이 보일 수 true

3) 로깅 설정이 DEBUG 수준에서 메시지를 표시합니다 확인하기 위해 설정에서 akka.actor.debug.receive 설정을 설정

그런 것들을 설정하면 테스트중인 액터에 대해 DEBUG 레벨에 기록 된 모든 수신 메시지를보기 시작해야합니다. 자세한 내용은 Akka 문서의 Testing Actor Systems 섹션, 특히 Tracing Actor Invocations 하위 섹션에서 확인할 수 있습니다.

관련 문제