我在我的项目中使用 spring webflux。我的 Controller 类调用返回 Mono 或 Flux 的服务类方法。
我正在尝试为我的服务类编写单元测试。我不确定如何为返回 Mono/Flux 的方法编写单元测试。我检查的大多数文章都建议我使用 WebclientTest。但重点是,我在这里测试我的服务等级。当我通过模拟服务类方法测试我的 web 层( Controller 类)时,我使用了 WebclientTest。
现在我想为我的服务类方法编写单元测试(通过模拟数据库类)
关于如何实现这一点有什么想法吗?我应该使用从测试中调用服务类方法并调用 block()
还是有更好的方法?
最佳答案
您可以使用 Project Reactor 为 testing 提供的 StepVerifier
目的。
不过,对于简单的场景(例如,当您只有 Mono
)时,调用 block
就可以了。
StepVerifier
可能会在您...时派上用场
- 有一个
Flux
并且想要断言流经管道的多个项目/事件 - 处理好时间
- 测试 Reactor 上下文
关于unit-testing - 返回Mono/Flux的Spring webflux单元测试方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59021079/