pytest_httpx
httpx-cache
pytest_httpx | httpx-cache | |
---|---|---|
1 | 2 | |
308 | 49 | |
- | - | |
8.1 | 0.0 | |
about 1 month ago | 7 months ago | |
Python | Python | |
MIT License | BSD 3-clause "New" or "Revised" 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.
pytest_httpx
-
Tips to prevent adoption of your API
I avoid writing automated tests that hit an external API - especially one out of my control - because I don't want my CI runs to ever fail because someone else's service wasn't responding. I want CI to be a completely closed box, such that any failures mean there's a bug in my code.
If I want to test external APIs I'll do that in a separate set of integration tests which are run as part of a separate system, not as part of my CI for every code commit to my repo.
I mostly use Python, and the APIs I talk to are mostly accessed via the requests or httpx libraries - both of which have excellent libraries for productive mocking:
- https://requests-mock.readthedocs.io/en/latest/pytest.html
- https://github.com/Colin-b/pytest_httpx
httpx-cache
-
httpx-cache: Simple caching transport for the awesome httpx lib
That's why I decided to try and make my own: https://github.com/obendidi/httpx-cache
- Sunday Daily Thread: What's everyone working on this week?
What are some alternatives?
respx - Mock HTTPX with awesome request patterns and response side effects 🦋
httpx-caching - Caching for HTTPX
hook-slinger - A generic service to send, retry, and manage webhooks
httpx - A next generation HTTP client for Python. 🦋
pytest-sugar - a plugin for py.test that changes the default look and feel of py.test (e.g. progressbar, show tests that fail instantly)
memoize - Caching library for asynchronous Python applications.
gomega - Ginkgo's Preferred Matcher Library
cachecontrol - The httplib2 caching algorithms packaged up for use with requests.
adventofcode - Advent of Code solutions of 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 and 2023 in Scala