栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

@DataJpaTest需要测试之外的类

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

@DataJpaTest需要测试之外的类

问题是您

@SpringBootApplication
有一些有关计划的其他配置,并且通过在其中添加配置而没有
@SpringBootConfiguration
针对测试的自定义设置,这样的计划要求对所有内容都是强制性的。

让我们退后一步。添加后

@DataJpaTest
,Spring
Boot需要知道如何引导您的应用程序上下文。它需要找到您的实体和存储库。切片测试将递归搜索
@SpringBootConfiguration
::首先在实际测试包中,然后是父级,然后是父级,如果找不到,则会抛出异常。

@SpringBootApplication
@SpringBootConfiguration
这样,如果你没有做什么特别的东西,切片测试将使用您的应用为源动力的配置(这是国际海事组织,一个优秀的默认值)。

切片测试不会盲目地启动您的应用程序(否则就不会切片),因此我们要做的是禁用自动配置并为手头的任务自定义组件扫描(仅扫描实体和存储库,并在使用时忽略其余所有内容

@DataJpaTest

。这对您来说是个问题,因为已应用了应用程序配置,并且计划材料应该可用。但是不对依赖的bean进行扫描。

在您的情况下,如果要使用切片,则调度配置应移至“ a”

SchedulingConfiguration
或“某物”(如上所述,不会使用切片对其进行扫描)。无论如何,我认为将
SchedulingConfigurer
实现分开还是比较干净的。如果这样做,您会发现错误将消失。

现在让我们假设您想要该特定测试

FooService
也可用。您可以导入丢失的类,而不是像dimitrisli建议的那样启用组件扫描(这基本上是为您的配置禁用切片)。

@RunWith(SpringRunner.class)@DataJpaTest@import(FooService.class)public class VisitRepositoryTest {  ...}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/395474.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号