当前位置: 首页 > 知识库问答 >
问题:

如何使用WebFlux和Java8在代码下面进行单元测试?

慕凡
2023-03-14

我想使用WebFlux创建一个Unit Test此代码,但我不知道如何做到这一点,我需要在单元测试中涵盖下面的100%调用方法。

@Autowired
private WebClient webClient;

public String call(final String xml) {
    return this.webClient.post().uri("URL")
                         .contentType(MediaType.APPLICATION_XML)
                         .body(Mono.just(xml),String.class)
                         .retrieve()                             
                         .bodyToMono(String.class)
                         .block();
}

非常感谢谁能帮我

共有2个答案

能翔宇
2023-03-14

使用mockito这样的库来模拟WebClient是您最好的选择,如果您想对此进行单元测试,但该函数看起来更值得联调,因为您实际上只会在那时测试mock的功能。

魏彦
2023-03-14

你不能真正的单元测试这个,你必须做一个联调.自旋你自己的Webserver,服务的内容,帮助你的测试.至少这是我唯一的想法这一点。

看看这里:

https://mock-server.com/mock_server/running_mock_server.html

 类似资料:
  • <代码>list.stream()。 列表中的每个项目都将从数据库中删除。 假设列表中有3个项目,如何进行单元测试: 删除被调用了3次。 删除被称为“按顺序/顺序”,即列表中的元素顺序?

  • 我正在尝试使用yii2 codeception。我有一个名为Client的类,它扩展了ActiveRecord。 规则()函数: 我在tests\codeception\unit\models文件夹中创建了一个名为ClientTest的文件,该文件包含以下内容: 当我使用“codecept run unit--debug”命令运行测试时,我看到

  • 问题内容: 我是Java和junit的新手。我有以下要测试的代码。如果您能提出有关测试它的最佳方法的想法,将不胜感激。 基本上,以下代码与从集群中选出领导者有关。领导者在共享缓存上持有锁,并且如果领导者以某种方式释放了对缓存的锁定,则领导者的服务将恢复并处置。 我如何确保领导者/线程仍保持对缓存的锁定,并且在执行第一个线程时另一个线程无法恢复其服务? 问题答案: 作为测试框架的替代方法(或使用JU

  • 问题内容: 我有一段代码,期望用Java UUID()填充响应对象的一个​​属性。 如何从外部对代码进行单元测试以检查此行为?我不知道会在其中生成UUID。 需要测试的示例代码: 问题答案: Powermock和静态模拟是前进的道路。您将需要以下内容: 请注意,可以在带有@Before注释的方法中实现静态模拟,因此可以在需要UUID的所有测试用例中重新使用该静态模拟,以避免代码重复。 初始化静态模

  • 问题内容: 我想问一下您首选的Java EE代码测试方法? 我发现只有三个项目,这些项目试图帮助在Java EE环境中编写单元测试: http://jakarta.apache.org/cactus/:上次发布时间:2009-01-18 http://www.junitee.org/:最新版本:2004-12-11 http://ejb3unit.sourceforge.net/:最新版本:200

  • 问题内容: 我想为一些连接到数据库,运行一个或多个查询然后处理结果的代码编写一些单元测试。(实际上没有使用数据库) 这里的另一个开发人员编写了我们自己的DataSource,Connection,Statement,PreparedStatement和ResultSet实现,这些实现将基于xml配置文件返回相应的对象。(我们可以使用伪造的数据源,并针对返回的结果集运行测试)。 我们在这里重新发明轮