spring junit ランナーでいくつかのテストを実行する際に問題が発生しています。
私は春に Java 構成を使用しているため、自分に合った例が見つからないようです。
私がやりたいのは、dao クラスの 1 つを使用できる junit テストを作成し、それを hibernate などで動作させることだけですが、そのためには実際の Spring コンテキストでロードする必要があります。
私は次のようにテストクラスを書いてみました:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes=HibernateConfig.class, loader=AnnotationConfigContextLoader.class)
public class TestNodeDao {
@Configuration
@ComponentScan(basePackages = "com.orclands" )
static class Config {
@Bean
public NodeDao nd() {
NodeDao nd = new NodeDao();
return nd;
}
}
@Autowired
private NodeDao nd;
ただし、 で自動配線することはできませんnodeDao
。それは言いNoSuchBeanDefinitionException
ます。
を自動配線しようとするNodeDao
と実行されますが、春のテストとして実行する唯一のポイントは、実際の春に構成された をテストできるようにすることNodeDao
です。
コンポーネントスキャンなし、コンポーネントスキャンあり、Bean宣言なし、その他の方法も試しましたが、動作しませんでした。