Spring WebFlux,单元测试Mono和Flux
对反应式编程感兴趣,我玩了《构建反应式RESTful Web服务》指南。并希望转移前途并添加一些单元测试。
我尝试RouterFunction
使用普通的Junit /
Mockito测试来测试我的处理程序()。但是,由于它是反应性的,因此处理程序将返回Mono<ServerResponse>
。所以我不得不用block()
它来测试ServerResponse
状态,但是无法抽出他的身体来测试它。在网络上搜索解决方案时,似乎所有示例都使用WebTestClient
。
我的问题是:
鉴于所有示例都WebTestClient
用于测试反应性REST服务,并且(单元)测试a的主体并不容易ServerResponse
。对a进行单元测试是一种好习惯RouterFunction
还是始终对它进行更广泛的测试更好WebTestClient
?
非常感谢。
-
似乎最佳做法是使用
WebTestClient
。但是,可以在没有运行服务器的情况下使用此服务器。该
spring-test
模块包括一个WebTestClient
可用于在 有或没有运行服务器的情况下 测试WebFlux服务器端点的功能。- https://docs.spring.io/spring/docs/5.0.0.BUILD-SNAPSHOT/spring-
framework-reference/html/web-reactive.html#web-reactive-
tests
-
使用Spring Security进行单元测试
2021-01-31 关注 0 浏览114 1答案
-
Spring Boot不运行单元测试
2021-02-02 关注 0 浏览461 1答案
-
使用Spring Security进行单元测试
2021-02-02 关注 0 浏览240 1答案
-
使用Spring进行单元测试与集成测试
2021-02-02 关注 0 浏览86 1答案
-
带有非流应用程序/ json的Spring WebFlux Flux行为
2021-01-30 关注 0 浏览152 1答案
-
验证程序的Spring单元测试问题
2021-02-02 关注 0 浏览76 1答案
-
在单元测试期间填充 Spring @Value
2022-04-11 关注 0 浏览50 1答案
-
在单元测试期间填充Spring @Value
2021-02-02 关注 0 浏览133 1答案
-
Spring Aspect没有在单元测试中触发
2021-02-02 关注 0 浏览97 1答案
-
Spring的MockMvc是否用于单元测试或集成测试?
2021-02-02 关注 0 浏览167 1答案