模拟FeignClient不会替换Spring Boot 2.3.3中的应用程序FeignClient

问题描述

从Spring Boot 2.2.2升级到2.3.3后,不替换测试中的伪客户端。 模仿的bean似乎已实例化,但是它不能代替应用程序提供的实际FeignClient。

spring-cloud-starter-openfeign版本:2.2.5.RELEASE

spring boot版本:2.3.3.RELEASE

春季版:5.2.8。发布

我发现与这句话相关的问题已经解决,但对我来说似乎并不能代替实际的FeignClient。 https://github.com/spring-cloud/spring-cloud-openfeign/issues/336

https://github.com/spring-cloud/spring-cloud-openfeign/issues/337

@SpringBootTest(classes = [SomeApplication.class],webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@ContextConfiguration(classes = [ApplicationTestConfig])
@ActiveProfiles("test")
@TestExecutionListeners([DependencyInjectionTestExecutionListener,TransactionalTestExecutionListener])
@AutoConfigureMockMvc
abstract class AbstractControllerSpecification extends AbstractSpecification {}

对于ApplicationTestConfig,我有类似的东西

@EntityScan(basePackages = "somepackage")
@ComponentScan(basePackages = "somepackage")
@IntegrationComponentScan(basePackages = "somepackage")
@Profile("test")
class ApplicationTestConfig {

    DetachedMockFactory factory = new DetachedMockFactory()

    @Bean
    SomeResource someResource() {
        factory.Mock(someResource)
    }
}

我发现一种解决方法是设置FeignClient(primary = false),它似乎工作正常,但我认为这不是解决方案。

任何想法在2.3.3中是否仍然存在问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...