エンタープライズ レベルの Java サービスの単体テスト ケースを作成するために依存サービスをモックする場合、単体テスト ケースのデータを設定するのは非常に面倒です。ほとんどの場合、これが、開発者が単体テスト ケースを作成せず、統合スタイルのテスト ケースを作成する最も説得力のある理由の 1 つです。サービスが他のいくつかのサービス (それぞれの DAO に依存) と独自の DAO に依存している場合、when-thenReturn
合理的にネストされたオブジェクトの句を作成するのはかなりの労力となり、開発者は簡単な方法を取り、Spring コンテキスト全体をロードし、必要なすべてのコード パスを通過できるデータを常に提供するとは限らない直接ソースからデータを調達しているように見えます。これを背景に、私の同僚は、サンプル統合テストを実行し、アスペクトを使用して、関連するすべてのデータ ポイントをキャプチャし、単体テストのテスト データを具体化するために使用できる XML 表現にシリアル化することを提案しました。ケース。驚いたことに、githubでこれと非常によく似たTestDataCaptureJというフレームワークを見つけました。アスペクトを使用してデータ ポイントをキャプチャし、Java コードを生成してオブジェクトを作成しました。
サイトに記載されている動機は非常に適切に思えたので、同様の機能を提供できる代替手段が他にないかどうか疑問に思っていました. また、専門家がこの全体的なアプローチを批判できれば素晴らしいことです。
また、このプロジェクトは約 2 年前のもので、修正が必要ないくつかのバグがあり、mavenized github フォークとして返してくれることを望んでいます。有名な厩舎の 1 つから同様のイニシアチブが他にないことを確認するだけです。
前もって感謝します!