httpmock
HTTP mocking for Golang (by jarcoal)
gock
HTTP traffic mocking and testing made easy in Go ༼ʘ̚ل͜ʘ̚༽ (by h2non)
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
httpmock
Posts with mentions or reviews of httpmock.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2024-09-11.
- Integration Tests in Go with Cucumber, Testcontainers, and HTTPMock
- Golang rest-api testing
- [Rant] Sa Isi Bage Microserviciile in C*R
-
Integration tests with Go and testcontainers
We will use httpmock for this purpose. Inside function setupSuite(), where we created useCase and provided nil as a billingClient now we will pass mocked http client:
-
Best practices around mocking interfaces from external packages
Alternatively, you could use an http mock library like https://github.com/jarcoal/httpmock, and override the urls the RealClient calls with a mock response in your tests.
-
best way to mock/unit test http.Client?
To mock an API: https://github.com/jarcoal/httpmock to use when your code calls external APIs so you don't want your tests call the real API. No need to create an interface as you do.
gock
Posts with mentions or reviews of gock.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-12-09.
-
Testing calls to external APIs
Mocking the http client with explicit responses; for example using h2non/gock
- What features would you consider missing/nice to haves for backend web development in Rust?
-
Mock HTTP response
Check out gock.
- API Mock Testing Frameworks
-
Testing methods with HTTP calls?
h2non/gock and
-
Go Package for Mocking HTTP Traffic: github.com/h2non/gock
Last time I covered testing in Go I mentioned a package used for testing equality called github.com/google/go-cmp, this time I will share with you a way to mock HTTP traffic using the package github.com/h2non/gock.
-
HTTP mocking
If you need a good library for mocking http servers https://github.com/h2non/gock does a great job.
-
best way to mock/unit test http.Client?
github.com/h2non/gock
- How to mock `jwk.Fetch` in my unit tests?
- Has anyone here compiled DroneCI from scratch?
What are some alternatives?
When comparing httpmock and gock you can also consider the following projects:
hoverfly - Lightweight service virtualization/ API simulation / API mocking tool for developers and testers
gomock - GoMock is a mocking framework for the Go programming language.
mockit - Library that make mocking of Go functions/methods easy
go-sqlmock - Sql mock driver for golang to test database interactions
govcr - HTTP mock for Golang: record and replay HTTP/HTTPS interactions for offline testing
httpexpect - End-to-end HTTP and REST API testing for Go.
minimock - Powerful mock generation tool for Go programming language
go-txdb - Immutable transaction isolated sql driver for golang
go-vcr - Record and replay your HTTP interactions for fast, deterministic and accurate tests
mockhttp - Mock object for Go http.ResponseWriter