mockhttp
httpmock
Our great sponsors
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.
mockhttp
-
Mock heavy tests
I'd say that without wanting to refactor the code a little bit (maybe moving those HttpClients into a service so that they are easily mocked) your best bet would be to use something like WireMock or MockHttp.
-
I created a simpler RestSharp alternative, SimpleHttpClient
What is the need to create a wrapper around the HttpClient? If it's for mocking, you can use this MockedHttpClientHandler for you tests
-
How to write tests for HttpClient using Moq
Voilà! That's how to write tests with HttpClient and Moq. With some extension methods, we could have a small DSL to write more readable tests. For a more fully-featured alternative to write tests for HttpClient, check mockhttp, "a testing layer for Microsoft's HttpClient library."
-
Help: how to memory-host & test a unit-test controller/service?
So if you need to mock http client you may want to look into a library like https://github.com/richardszalay/mockhttp
- RestClient.Net 5.0.x Beta Released
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.
What are some alternatives?
WireMock.Net - WireMock.Net is a flexible product for stubbing and mocking web HTTP responses using advanced request matching and response templating. Based on the functionality from http://WireMock.org, but extended with more functionality.
gock - HTTP traffic mocking and testing made easy in Go ༼ʘ̚ل͜ʘ̚༽
RestClient.Net - .NET REST Client Framework for all platforms
hoverfly - Lightweight service virtualization/ API simulation / API mocking tool for developers and testers
Mmock - Mmock is an HTTP mocking application for testing and fast prototyping
mockit - Library that make mocking of Go functions/methods easy
httpclient-interception - A .NET library for intercepting server-side HTTP requests
gomock - GoMock is a mocking framework for the Go programming language.
minimock - Powerful mock generation tool for Go programming language
FakeItEasy - The easy mocking library for .NET
httpexpect - End-to-end HTTP and REST API testing for Go.