詳細な説明:
mvp4g アプリを使用した gwt では、イベントバスにかなり複雑なイベント フローがあります。LOGIN のような 1 つのイベントは、プレゼンター/ハンドラーからの反応として複数の他のイベントを生成します。現在、イベントがどのように相互に関連しているか、つまりどのイベントがこの特定のイベントの後に続く必要があるかを理解するのが非常に困難です。
プレゼンターとビューのテストはありますが、できれば実際のビューとサービスを使用せずに、イベント フローを明確に表示/モデル化するテストが不足しています。
簡単な説明: eventBus(?) の新しいテストを開発して、イベント フローを明確に記述してテストする必要があります。
私はいくつか無謀なアイデアを持っていますが、それらはすべて満足のいくものではないようです:
mvp4g イベントバスのカスタム実装 (醜いかもしれません) を書きます。
- 実際のプレゼンターを使用する
- モック (?) ビューを使用する
- モックサービス
- 生成されたすべてのサービス呼び出しを確認する
- クールではない理由: (a)この場合、テストは生成されたイベントを直接検証するのではなく、サービスを持つイベントのみを検証します。(b) EventBus の実装はややこしいように見えます。モック化されたサービスとビューを使用して各プレゼンターを作成する必要があります。
いくつかの魔法の mvp4g メカニズムを使用して、テストで eventBus を作成し、サービスをモックする方法を見つけてください。
- クールではない理由: 前と同じ - サービスを介した間接的な検証のみが可能であり、eventBus を手動で作成して、GIN や GWT モジュール間の依存関係などに関するすべての問題を解決する方法を見つけることができません。それを行う簡単な方法はないと思います。
テストでのイベント ツリーの追跡の問題に対する一般的な解決策はありますか? 複雑なイベントバス イベント フローに注目したのは私が初めてではないと思います。