首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Spring5中使用webtestclient为服务组件类编写Junit

如何在Spring5中使用webtestclient为服务组件类编写Junit
EN

Stack Overflow用户
提问于 2018-07-19 14:27:48
回答 0查看 348关注 0票数 1

我在我的Java微服务中使用了Springboot2、Spring5和reactive-webflux。我有一个想要使用webtestclient测试的服务类:

代码语言:javascript
运行
复制
@Service("authenticationProvider")
public class CommonAuthenticationProvider implements AuthenticationProvider {

 @Override
  public AccessToken getUserAccessToken(Tuple2<String, WebClient> serviceConnectionDetails, MultiValueMap<String, String> queryParams) {

    return serviceConnectionDetails._2
        .post()
        .uri(builder -> builder
            .path(serviceConnectionDetails._1)
            .queryParams(queryParams)
            .build())
        .accept(MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML)
        .retrieve()
        .bodyToMono(AccessToken.class)
        .block();

  }
}

这里的serviceConnectionDetails._2是一个webclient实例。我想写一个JUnit测试来模拟这个the客户端,并测试getUserAccessToken()方法。请协助,因为我已经尝试了许多东西,如mockmvc,mockRestServiceServer,但都没有工作。后来我才知道,我不能使用mockRestServiceServer,因为它用来模拟RestTemplate,而不是WebClient。我可以使用webtestclient测试控制器类方法,但不能在服务类上这样做。

EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51415741

复制
相关文章

相似问题

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