a configurable mock server
Mocking server responses are fundamental in development and maintenance of web applications.
Most often these mocks end up as part of the application code. And we might find ourselves repeating the code for creating these mocks.
Mocknode provides an intuitive web interface to configure a mock http server, modify the routes handled and configure how the server responds to different requests on these routes.
There are three ways a route can be handled:
- Proxy — Proxies the request to an existing service
- Stub — A static response which you can manage in the ‘manage stubs’ link of the route
- Dynamic Stub — Responds with a configured stub if the condition defined evaluates to true
You can add the different possible responses in the manage stubs page and choose the stub that you want the route to return.
In cases where more control is needed i.e. different stubs have to be returned for the same route based on the request parameters, use dynamic stubs.
Mocknode exposes a http api to control the configuration of the mock server. This same api is used by the browser client to configure the server.
You can use this http api to have a granular control of the server in your integration / end-to-end tests.
The endpoints list is available on the github readme.
Requests to mocknode are logged in two files:
- Access log — logs containing all requests to mocknode
- Change log — logs containing configuration change requests to mocknode
Mocknode is a fairly young project which I have used in a couple of scenarios. Please do comment on what features you’d like to see implemented.