何时使用 httptest.Server 和 httptest.ResponseRecorder

作为标题,什么时候使用 httptest.Server 和 httptest.ResponseRecorder?

在我看来,我还可以使用 httptest.Server 测试我的处理程序以返回正确的响应。我可以简单地启动一个带有我的处理程序实现的 httptest.Server,然后对响应的主体进行验证。

如果我错了,请纠正,我正在学习 Go + TDD


RISEBY
浏览 268回答 1
1回答

梵蒂冈之花

当您只想检查时,如果您http.Handler做了它应该做的,则不需要使用httptest.Server. 只需使用httptest.ResponseRecorder实例调用您的处理程序并检查输出,如示例中所示。的可能用途httptest.Server有很多,所以这里只是我想到的几个:如果您的代码依赖于某些外部服务和 API,您可以使用测试服务器来模拟它们。(虽然我个人会隔离所有处理外部数据源的代码,然后通过接口使用它们,以便我可以轻松地为我的测试创建假对象。)如果您在客户端-服务器应用程序上工作,则可以在测试客户端时使用测试服务器来模拟服务器端。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go