簡體   English   中英

單元測試Akka中的持久演員

[英]Unit testing persistent actors in Akka

一個單元如何測試持久的演員。 我知道有一個akka-testkit可以用來獲取測試actor引用的底層actor對象,如下所示。

final TestActorRef<MyActor> ref = TestActorRef.create(system, props, "testA");
final MyActor actor = ref.underlyingActor();
assertTrue(actor.testMe());

但這不適用於此處提到的持久性演員。

問題:一個單元如何測試一個持久的actor方法?

這個問題已經在這個帖子的郵件列表回答了。 我會在那里給出答案。

測試Actors時,不應過度使用TestActorRef。 最佳做法是通過發送和接收來自演員的消息來盡可能多地進行測試。 即使使用TestActorRef,通常也會在通過發送和接收消息再次測試之前使用它來更改actor的狀態。 不建議使用直接訪問actor來直接調用方法。 如果您的actor中有一些更復雜的邏輯需要單獨測試,您可以考慮將其放入特征或不同的類中,並在沒有actor的情況下對其進行測試。

至於測試PersistentActors,正在使用的測試工具包,您可以在此處跟蹤進度。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM