首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Spock测试LocalContainerEntityManagerFactoryBean

如何使用Spock测试LocalContainerEntityManagerFactoryBean
EN

Stack Overflow用户
提问于 2019-04-22 20:36:05
回答 1查看 42关注 0票数 0

如何使用spock测试我的数据库连接?我知道如何使用JUnit和测试通过来做这件事,但是当我尝试使用Spock做类似的事情时,我得到了NullPointerException,并且无法在空对象上调用方法getDataSource()

代码语言:javascript
复制
@SpringBootTest
@ContextConfiguration(classes = DatabaseConfig.class)
@WebAppConfiguration
class DatabaseConfigTest extends Specification {

    @Autowired
    LocalContainerEntityManagerFactoryBean entityManagerFactoryBean;

    def "Should connect to database."() {
        when:
        entityManagerFactoryBean.getDataSource().getConnection()
        then:
        notThrown(SQLException.class)
    }
}

如何使用Spock测试DB连接,我的负责数据库配置的类是DatabaseConfig.class

EN

回答 1

Stack Overflow用户

发布于 2019-04-24 22:27:42

这应该会给你你正在寻找的东西。删除ContextConfiguration和WebAppConiguration注释。直接注入DataSource。

代码语言:javascript
复制
@SpringBootTest
class DatabaseConfigTest extends Specification {

    @Autowired
    DataSource dataSource;

    def "Should connect to database."() {
        when:
        dataSource.getConnection()
        then:
        notThrown(SQLException.class)
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55794521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档