問題タブ [akka-testkit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
365 参照

akka - Akka TestKit で TestProbe を作成する時間

テストでactorOfをオーバーライドするための特性があります:

そして、メッセージを受信すると自己停止するワーカー アクターがあります。

また、アクターを作成してキューに保持するマスター アクターもいます。

そして、失敗したこのテスト:

テストの Thread.sleep の後、「1 は 2 と等しくありませんでした」というエラーが表示されます。何が起こっているのかわかりません。しかし、TestProbe() は時間内に作成できないと推測できます。私に何ができる?

0 投票する
1 に答える
255 参照

akka - Akka FSM と TestKit が共有テストを Trait に入れると、sender が deadLetters になります

一般的な Akka FSM コードのいくつかの一般的なテストをトレイトに分解しようとしていますが、senderref はdeadLetters. この FSM コードの使用:

次に、以下を使用して、テスト コードを複製して、2 つの仕様で共通コードを 2 つの状態にテストできます。

一般的なテストロジックをトレイトに反応させようとすると、次のようになります。

応答は、deadLetters アクターに送られます。

送信者は Actor[akka://default/deadLetters] [INFO] [11/30/2014 16:15:49.812] [default-akka.actor.default-dispatcher-2] [akka://default/deadLetters] メッセージですTestActor[akka://default/user/$$b] から Actor[akka://default/deadLetters] への [java.lang.String] が配信されませんでした。[1] デッドレターが発生しました。このロギングは、構成設定 'akka.log-dead-letters' および 'akka.log-dead-letters-during-shutdown' でオフにするか、調整することができます。

FSM アクターがトレイト内からのテスト make の呼び出しに応答したときに、testActor に戻って動作するように、暗黙的な送信者を修正するにはどうすればよいexpectMsgですか?

0 投票する
1 に答える
4707 参照

scala - akka アクターを再起動する方法はありますか

アクターを再起動する方法はありますか? アクター システム構造で回復戦略をテストするテストを書いていますが、アクターを再起動してカスタマイズした preRestart/postRestart ライフ サイクル フックをテストする方法が見つかりません。デフォルトの SupervisorStrategy を使用 - OneForOne とデフォルトの決定者。Killed を使用しようとしましたが、アクターを停止するように変換されたデフォルトの戦略です。また、戦略をオーバーライドするということは、実稼働コードで実際に実行されているものとは異なるものを実際にテストすることになるということです。

テストの不可欠な部分として幸せな日のシナリオだけでなくテストしたと考えているため、ここで重要なことを見逃していましたか?

明確にしていただきありがとうございます

以下を試しましたが、作成できませんでした:

そして、この失敗したアクターに合格したテストでは:

ここで、AddressService アクターは次のように定義されます。

しかし、まだ「失敗」メッセージが処理されていません

0 投票する
1 に答える
523 参照

scala - コンストラクタ パラメータを持つアクターのテスト クラス内に TestActorRef を作成する方法は?

テスト クラス内で TestActorRef を作成するにはどうすればよいですか。具体的には、次のテストを設定しています...

...テストを実行するとすべて成功しますが、ActorSystem をシャットダウンした後、この長いエラー トレースが表示されます...

この前の質問に出くわしましたが、この場合、受け入れられた回答はうまくいきませんでした。

関連する場合、DoubleAuctionMarketアクターの定義は次のとおりです...

0 投票する
1 に答える
1257 参照

scala - testKit で単一のテストを無視する方法

同じクラスに一連のテストがあり、すべて同じ機能をテストしています。たとえば、1 つの機能をスキップ/無視するにはどうすればよいですか。

使用しregisterIgnoredTest("test to be ignored")ましたが、削除する必要がありinます。よりエレガントなソリューションはありますか? コメントのように