2013-11-22 94 views
0

對於測試,我有一個抽象類。Spring jdbctemplate,datasource,transactionManager

public abstract class BaseTestClass 

    private JdbcTemplate jdbcTemplate; 

    @Autowired 
    public void setDataSource(DataSource dataSource) 
    { 
    this.setJdbcTemplate(new JdbcTemplate(dataSource)); 
    } 
    ... 
} 


@Transactional 
@ContextConfiguration(locations = {"/spring/test/test-dao-context.xml"}) 
public class TestUser extends BaseTestClass{ 
... 
} 

在test-dao-context.xml文件中,我有我的事務管理器和數據源。

SetDataSource從不調用,所以當我嘗試做一個測試時,我得到一個空指針異常。

+0

您是如何配置數據源以及組件掃描的?你能證明嗎? – kaliatech

回答

0

您需要運行一個合適的跑步者進行測試,該跑步者對於Spring驅動的測試是SpringJUnit4ClassRunner。否則什麼都不會被注入,因爲沒有Spring容器管理所有的實例。

查看Spring Unit Testing瞭解詳情。

相關問題