43.3.9 自动配置的Spring WebFlux测试
你可以使用@WebFluxTest
检测Spring WebFlux控制器是否工作正常。该注解将自动配置Spring WebFlux设施,并且只扫描注解@Controller
、@ControllerAdvice
、@JsonComponent
、Converter
、GenericConverter
、Filter
和WebFluxConfigurer
的bean。其他常规的@Component
bean将不会被扫描。
注 如果你需要注册额外的组件,比如Jackson模块
,你可以在你的测试上使用@Import
来导入另外的配置类。
通常@WebFluxTest
只限于单个控制器(controller)使用,并结合@MockBean
以提供需要的协作者(collaborators)的mock实现。
@WebFluxTest
也会自动配置WebTestClient
。WebTestClient为快速测试WebFlux控制器提供了一种强大的方式,并且不需要启动一个完整的HTTP服务器。
注 使用@AutoConfigureWebTestClient
注解一个non-@WebFluxTest
的类(比如@SpringBootTest
)也可以自动配置WebTestClient
。下面的例子展示了一个同时使用@WebFluxTest
和WebTestClient
的类:
在附录中可以查看@WebFluxTest
开启的自动配置列表。
注 有时,光光编写Spring MVC测试是不够的。Spring Boot可以帮助你在实际的服务器上运行完整的端到端的测试。
最后更新于