Skip to content

Latest commit

 

History

History
49 lines (32 loc) · 1.44 KB

README.md

File metadata and controls

49 lines (32 loc) · 1.44 KB

Mountebank is a great tool that allows us to mock services using different protocols. It is extremely stable and simple to use, yet very flexibile. When using in fast moving projects, though, boiler-plate code and organizing stubs can get unmanageable. Mbgen is an attempt to come up with a opinionated structure for organizing stubs and help teams move faster by generating this structure and most parts of the stubs.

Mbgen helps organize stubs in terms of microservices and scenarios within each microservices.

Example: orders microservice can have scenarios like place_order_ok and place_order_out_of_stock_error

Installing

npm i -D mbgen

You'll also need to install Mountebank.

npm i mountebank

Usage

Initialize imposters.ejs file and stubs folder for Mountebank:

npx mbgen init

Generate a microservice:

npx mbgen service

Generate stubs for scenarios in a microservice:

npx mbgen scenario

Each scenario has a directory created for it in the specified microservice. The scenario directory will have ejs stubs with boiler-plate code which you can edit.

Add the following to your package.json scripts:

{
  "scripts": {
    "start": "mb --configfile imposters.ejs"
  }
}

Modify your stubs and run npm start to start the Mountebank service

Built With

License

This project is licensed under the MIT License - see the LICENSE file for details