Spring Boot 与外部API通信的应用程序的集成测试

jmp7cifd  于 4个月前  发布在  Spring
关注(0)|答案(1)|浏览(72)

我有一个Sping Boot Web应用程序,它正在与外部API进行对话,我需要为我的控制器编写一个集成单元测试用例,我正在使用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这样的外部工具,我可以创建一个假的服务器之类的东西,自己编写模拟API吗?

r3i60tvu

r3i60tvu1#

最简单的方法,也是我最常用的方法,就是将外部API隐藏在一个外观之后,并在集成测试期间模拟该外观。
如果去掉一层集成会让您担心,那么可以向您的真实的外观实现添加一组特征化/契约测试。

相关问题