如何在模拟第三方 API 时测试 spring 休息控制器?
How to test spring rest controllers while mocking third party APIs?
我想为调用第三方 api 的休息控制器编写集成测试。为了模拟第三方 api 我正在使用 mock-server java library 并且为了集成测试我正在使用测试容器。似乎这两者是冲突的。模拟服务器库要求测试用例用 org.junit.test
注释,而测试容器要求测试用例用 org.junit.jupiter.api.Test
.
注释
如果我使用 jupiter 测试注释,启动失败并显示 org.mockserver.client.SocketConnectionException: Unable to connect to socket /127.0.0.1:1080
,而如果我使用 junit 测试注释,则测试启动失败并显示 Caused by: java.lang.IllegalStateException: Mapped port can only be obtained after the container is started
有没有人遇到过这种情况,您想要编写其余控制器测试以及模拟第三方 apis?
谢谢。
我可以通过删除包 org.junit
下的任何注释来获得我的测试 运行。所有注释均来自org.junit.jupitor
.
我想为调用第三方 api 的休息控制器编写集成测试。为了模拟第三方 api 我正在使用 mock-server java library 并且为了集成测试我正在使用测试容器。似乎这两者是冲突的。模拟服务器库要求测试用例用 org.junit.test
注释,而测试容器要求测试用例用 org.junit.jupiter.api.Test
.
如果我使用 jupiter 测试注释,启动失败并显示 org.mockserver.client.SocketConnectionException: Unable to connect to socket /127.0.0.1:1080
,而如果我使用 junit 测试注释,则测试启动失败并显示 Caused by: java.lang.IllegalStateException: Mapped port can only be obtained after the container is started
有没有人遇到过这种情况,您想要编写其余控制器测试以及模拟第三方 apis? 谢谢。
我可以通过删除包 org.junit
下的任何注释来获得我的测试 运行。所有注释均来自org.junit.jupitor
.