私の単体テストでは、Spring をコード (API、注釈) で構成して、Bean 構成ファイルに依存しないようにしたいと考えています。
これはできますか?
例えば:
Class Dependency {}
Class A
{
@AutoWired
Dependency d;
}
A をテストするとき、構成ファイルを使用せずに、依存関係メンバーが解決された A のインスタンスを作成できるようにしたいと考えています。
ありがとうございました!
私の単体テストでは、Spring をコード (API、注釈) で構成して、Bean 構成ファイルに依存しないようにしたいと考えています。
これはできますか?
例えば:
Class Dependency {}
Class A
{
@AutoWired
Dependency d;
}
A をテストするとき、構成ファイルを使用せずに、依存関係メンバーが解決された A のインスタンスを作成できるようにしたいと考えています。
ありがとうございました!
つまり、はい、 org.springframework.context.support.AbstractApplicationContextの実装のいずれかで Spring アプリケーション コンテキストを開始できます。つまり、XML ファイルから定義をロードしたくない場合は、org.springframework.context.support.StaticApplicationContextまたはorg.springframework.context.support.GenericApplicationContextを使用してコンテキストを開始できます。
インスタンス化されたコンテキストで、BeanFactory を使用して Bean の作成を開始できます。これは、選択したコンテキストのデフォルトまたはニーズに合ったカスタム コンテキストのいずれかです。
実際には、それよりもはるかに多くの作業が必要です。単純な XML 構成を使用する方が簡単ですが、実行できます。
XML 構成の代わりにJava 構成を使用できます。
AnnotationConfigApplicationContextを使用して、Bean 構成ファイルを使用せずにプログラムでアプリケーション コンテキストを作成できます。