2009-08-28 5 views
3

TestNGに基づいたテストフレームワークのためにGuiceを使用しようとしています。このフレームワークは、依存関係のテストクラスを分析し、テストでそれらを構築する必要性を排除します。Guiceとの動的バインディングとジャストインタイムバインディングを定義するにはどうすればよいですか?

Guiceはすべて注入に関するもので、フレームワークに適していると思います。しかし、問題は、インジェクタを作成した後にバインディングを定義する方法です。これは、デフォルトの実装をモックで置き換えるためにテストがバインディングをオーバーライドする可能性があるために必要です。

さらに、実行時にクラス名の規則に基づいて実装を推測したい場合があります。ジャストインタイプの綴り機能のように聞こえます。しかし、私は自分のジャストインタイムバインディングプロバイダをどのように提供しますか?

答えて

3

このような動的な動作は、すぐにサポートされていませんが、モジュールの書き換えによって多くのことを達成できます。 Guiceberryを見てください。すでにJUnitテストの模擬置換が実装されています。

+0

私は自分で目的のクラスを見つけてインスタンス化することができます(それらの大部分はパラメータのないコンストラクタを持っています)。そして、インジェクタにそのメンバを挿入させるようにします – artemb

関連する問題