Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Dredd: this is the classic API testing tool and it's been around for years. Dredd works by looking at your API specification and figuring out what tests need to be generated to validate your API implementation. You don't need to write any additional code, although you may want to create your own custom hooks to customise Dredd's behaviour. Dredd hooks are useful for example to test resource endpoints (the likes of /todo/{todo_id}) and to clean up your database from any resources created during the test suite. I wrote a tutorial on how to write Dredd hooks which you may find useful.
schemathesis: Dredd is great, but it only runs about one test per endpoint and really only tests the happy path of your implementation. For a more robust test suite which covers edge cases and all possible scenarios you wouldn't even be able to think of, you need schemathesis. schemathesis works similarly to Dredd, but it uses an approach called property-based testing which allows you to automatically generate hundreds of different test cases based on certain conditions. schemathesis does it all for you so you don't really need to understand how property-based testing works, although I do recommend reading about it.