【发布时间】:2016-11-15 13:09:52
【问题描述】:
我可能会提供我的问题的完整 GitHub 示例,但目前我只是在问 - 也许有人遇到了类似的问题。
问题是 - 使用 Spock 和 Spring Boot 我想运行集成测试并在“设置”方法中预填充 H2 数据库的本地实例。我创建了几个可以互为父对象的对象。所以我创建例如。 Human1 和 Human2,从序列中获取它们生成的 ID,然后以 Human1 id 作为“parentId”属性准备 REST JSON 调用,并对 API 进行 POST 以创建以 Human1 作为父级的 Human3。
我的 API 解析检索到的 DTO,提取“parentId”值,并使用带有方法“findOne(id)”的存储库执行搜索。问题是在这个阶段存储库声称数据库中没有内容(在适当的表中)。
我尝试过使用 @Transactional(它在我的 Spock 规范和映射器类的方法上),在设置中保存和刷新,分别刷新存储库和其他数千个东西,但似乎没有任何效果。所以请 - 如果有人至少能阐明这个问题,我将不胜感激。
【问题讨论】:
-
您可以在下方添加您的答案并自行接受。这样,问题将被标记为“已回答”,并有助于其他用户。
标签: hibernate spring-boot integration-testing spring-data-jpa spock