【发布时间】:2016-02-15 21:39:10
【问题描述】:
试图从 junit 测试中调用一个非常简单的方法。 我有一个接口和类:
public interface CacheSampleDao {
String sample(String a);
}
和
public class CacheSampleImpl implements CacheSampleDao {
public String sample(String a) {
return "1";
}
}
这个类也是我的context.xml中的一个bean
<bean class="com.premierinc.datascience.repo.CacheSampleImpl"/>
还有一个测试
@Test
public class CacheSampleTest extends AbstractTest {
@Autowired CacheSampleDaoImpl cacheSampleDaoImpl;
@Test
public void cacheTest() {
String a = cacheSampleDaoImpl.sample("A");
}
}
为什么这个测试会给出空指针异常?是否有一些其他相关的配置需要为此或我缺少的其他步骤完成?
【问题讨论】:
-
您的测试没有任何注释?
-
如何在测试中设置 Spring 上下文(我认为这就是 @JérémieB 的意思)——
AbstractTest中是否有任何@RunWith注释?如果没有,您希望如何注入cacheSampleDaoImpl? -
CacheSampleTest 有一个 Test 注释,我只是在此处进行了编辑以显示它。亚当,我没有 @RunWith 注释,我正在研究它
-
@JérémieB 是的,我添加了该注释,然后修复了我的 pom 的一个问题,然后做了一个 mvn clean 并且现在更好了。我最终会想出来的!