我有一个与外部 API 通信的 Spring Boot Web 应用程序,我需要为我的控制器编写一个集成单元测试用例 我正在使用 testWebClient
webTestClient
.get()
.uri(uriBuilder -> uriBuilder.path("/my-application-api").build())
.header(HttpHeaders.ACCEPT, MediaType.APPLICATION_JSON_VALUE)
.exchange()
.expectStatus()
.isOk()
my-application-api 存在于控制器类中,它是与外部 api 通信的方法 并进行一些操作
如果不使用像wiremock/mockserver这样的外部工具,我可以创建一个假服务器之类的东西并自己编写Mock API吗??
我最常使用的最简单方法是将外部 API 隐藏在外观后面,并在集成测试期间模拟该外观。
如果您担心取消一层集成,请在实际的外观实现中添加一组特征/契约测试。