Last Updated: May 22, 2026
The net/http/httptest package gives you two ways to test HTTP code without standing up a real network server in production: an in-memory ResponseRecorder for unit tests that call a handler directly, and a real loopback server on a random port for integration tests that drive the full transport stack. Both ship in the standard library, so there's no third-party framework to learn. This chapter covers how to build requests, invoke handlers, assert on the result, and choose between the two testing approaches.