Golang 有这两个相似的库 http
和 httptest
并且它们都有 NewRequest
函数。
如果 http.NewRequest
能做到这一切,为什么我们还需要 httptest.NewRequest
?
如果我需要为我的测试创建多部分/多形式请求,我需要使用哪一个?
最佳答案
如文档中所示, httptest.NewRequest
“返回一个新的传入服务器请求,适合传递给 http.Handler 进行测试”,而 http.NewRequest
“返回适合与 Client.Do 或 Transport.RoundTrip 一起使用的请求。”因此,如果您在单元测试中将请求直接传递给处理程序,请使用 httptest.NewRequest
,如果您使用 http.Client
执行完整的往返行程, 使用 http.NewRequest
.
关于unit-testing - httptest.NewRequest 与 http.NewRequest : which one to use in tests and why?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45682353/