0
我正在嘗試使用AbstractTransactionalJUnit4SpringContextTests
來編寫集成測試。我想使用這個類的executeSQLScript
方法。Spring AbstractTransactionalJUnit4SpringContextTests and simpleJdbcTemplate
但是,當executeSQLScript
方法被調用時,它會拋出NullPointerException
,因爲AbstractTransactionalJUnit4SpringContextTests
的simpleJdbcTemplate
參數沒有被初始化。
我的代碼看起來如下:提前爲幫助
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration({"classpath:test-services-spring-context.xml"})
@TransactionConfiguration(transactionManager = "promoTransactionManager")
public class PromoBrickDAOIT extends AbstractTransactionalJUnit4SpringContextTests {
@Autowired
private PromoBricksDAO promoBricksDAO;
@Before
public void setUp(){
executeSqlScript("classpath:testdata/sql/PromoBrick_Create.sql", false);
}
@After
public void tearDown(){
}
@Test
public void testPromoBrickGivenBrowseTaxonomyNodeId(){
String btxNodeId = "v1_12";
List<PromoBrick> promoBricks = promoBricksDAO.findByBtxNodeId(btxNodeId);
assertNotNull(promoBricks);
assertEquals(promoBricks.size(), 1);
PromoBrick promoBrick = promoBricks.get(0);
assertNotNull(promoBrick);
}
public void setDataSource (@Qualifier("promoDataSource") DataSource dataSource) {
super.setDataSource(dataSource);
}
}
謝謝!