Endpoint Imposter
Advanced enough to mock a ToDo app. Simpler than a ToDo app.
Real endpoints don't always return the same result for the same request. With declarative scenarios you can replicate stateful behavior in a way that's simpler than implementing the actual service.
Are your tests randomly failing or taking ages to finish? Chances are it's due to a race condition or pointless waiting. Use release keys to precisely control when a response is sent to the application under test!
Test doubles are data that lives in JavaScript modules. You can reuse them like any other JavaScript module. You can transform them like any other data.
The way you build mocks is the same regardless if you're testing just a small function or the whole application.
Thanks to sessions you don't need to worry about the state leaking between tests. Simply add a suffix to the URL and get instantaneous, isolated state.
The mocks run as an independent HTTP server. Anything that works with HTTP will work with these mocks.