【发布时间】:2011-06-02 14:45:56
【问题描述】:
使用 Helios、spring 3.0.5(TestContext 框架)和 JUnit 4.7。我收到一个初始化错误,表明它找不到 ContextConfiguration。我在后台运行 ProcMon 并确定它根本没有看。我尝试了 xml 文件的逻辑位置,但无济于事。我不清楚我做错了什么。代码如下:
package com.hwcs.veri.agg.dao;
import static org.junit.Assert.assertEquals;
import java.util.List;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.transaction.TransactionConfiguration;
import org.springframework.transaction.annotation.Transactional;
import com.hwcs.veri.jpa.License;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "/JpaIntegrationTests-context.xml" })
@TransactionConfiguration( transactionManager = "transactionManager",
defaultRollback = true )
@Transactional
public class JpaIntegrationTests
extends AbstractTransactionalJUnit4SpringContextTests
{
@Autowired
protected LicenseDao licenseDao;
@Test
public void getLicenses()
{
List<License> licenses = this.licenseDao.getLicenses();
assertEquals( "Expecting 1 license from the query",
super.countRowsInTable( "product_schema.license" ),
licenses.size() );
}
}
是否需要执行某些特定步骤才能在 Eclipse 中将其作为 JUnit 测试运行?
【问题讨论】:
-
你在使用 m2eclipse 吗?运行 mvn test-compile 是否修复它?
-
您的 context.xml 在类路径中的什么位置?您可以在 (locations = {"classpath:/META-INF/JpaIntegrationTests-context.xml}) 中添加类路径标记,这将解析为您的 src/test/resources/META-INF/JpaIntegrationTests-context.xml 文件。
标签: spring junit nullpointerexception