java - @Autowired 不起作用

标签 java spring spock spring-test

我正在尝试使用 Spock 和 Spring 创建一个简单的集成测试。所有必要的依赖项都存在于我的类路径中 - spock libs 和 spock-spring 。不幸的是,underTest 没有被注入(inject)(我总是得到java.lang.NullPointerException: Cannot invoke method someMethod() on null object)。请看下面的代码

@ContextConfiguration(locations=["classpath:test1.xml","classpath:test2.xml"])
class SimpleSpockIntegrationTest extends Specification {

    @Autowired
    SomeRepo underTest;

    @Transactional
    def "repo test" () {
        expected:
            underTest.someMethod(1) == 1;
    }
}

最佳答案

看起来 spock-spring 1.1 (1.1-groovy-2.4) 中可能存在错误。切换到 1.0 后(使用 spock-core 1.1 时),一切正常。

关于java - @Autowired 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50424348/

相关文章:

java - 从另一个数据库访问方法中调用数据库访问方法

Java 将变量传递给映射的 DTO 方法?

Spring Data JPA 存储库 findAll() 方法返回 null 列表

spock - 单列日期表问题 :Groovy:Date variable '_' needs to be declared as method parameter

testcase - 如何为调用内部其他方法的方法编写 spock 测试用例

unit-testing - Grails:如何在使用 Spock 进行单元测试时将值保存到 transient 字段?

java - Java中如何从网络包数据中取出数据

java - 在 char[] 中搜索 char 与使用 String.indexOf() 方法搜索 String 有什么区别?

java - 为什么mp4视频的内容类型可以是text/plain?

java - Spring 集成 : TCP Client/Server opening one client connection per server connection