httpmock
integration-test-go
httpmock | integration-test-go | |
---|---|---|
5 | 1 | |
1,868 | 1 | |
- | - | |
4.7 | 0.0 | |
13 days ago | almost 2 years ago | |
Go | Go | |
MIT License | - |
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
- 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.
integration-test-go
-
Integration tests with Go and testcontainers
First, let's describe the service itself. Service in Github. The service uses gorilla/mux and Postgres. It implements a clean architecture and has such file structure:
What are some alternatives?
gock - HTTP traffic mocking and testing made easy in Go ༼ʘ̚ل͜ʘ̚༽
testcontainers-go - Testcontainers for Go is a Go package that makes it simple to create and clean up container-based dependencies for automated integration/smoke tests. The clean, easy-to-use API enables developers to programmatically define containers that should be run as part of a test and clean up those resources when the test is done.
hoverfly - Lightweight service virtualization/ API simulation / API mocking tool for developers and testers
Testify - A toolkit with common assertions and mocks that plays nicely with the standard library
mockit - Library that make mocking of Go functions/methods easy
integration-test-go
gomock - GoMock is a mocking framework for the Go programming language.
minimock - Powerful mock generation tool for Go programming language
httpexpect - End-to-end HTTP and REST API testing for Go.
go-vcr - Record and replay your HTTP interactions for fast, deterministic and accurate tests
monkey - Monkey patching in Go
Mmock - Mmock is an HTTP mocking application for testing and fast prototyping