【发布时间】:2012-11-09 12:43:36
【问题描述】:
我正在尝试使用AbstractTransactionalJUnit4SpringContextTests 编写集成测试。我想使用这个类的executeSQLScript 方法。
但是,当调用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);
}
}
提前感谢您的帮助!
【问题讨论】:
标签: integration-testing spring-test