mountebank is the first open source tool to provide cross-platform, multi-protocol test doubles over the wire. Just point your application to mountebank instead of the real dependency, and test like you would with traditional stubs and mocks.
At the moment, the following protocols are supported:
See getting started guide for more information.
npm install -g mountebank
The npm install requires at least node 0.10. Billions of other install options are also available with no platform dependencies.
mountebank has the following goals:
Not all of mountebank's goals are currently implemented, but fear not, for he has a team of top-notch open source developers, and they are legion.
Visit the Google group for any support questions. Don't be shy!
./build should do the trick on Mac and Linux, and
build.bat on Windows, assuming you have at least node 0.10.
If not, yell at me.
There are some tests that require network access (
grunt airplane ignores them in case that offends your
moral sensibilities). A few of these tests verify the correct behavior under DNS failures. If your ISP
is kind enough to hijack the NXDOMAIN DNS response in an attempt to allow you to conveniently peruse their
advertising page, those tests will fail. I suggest that, under such circumstances, you talk to your ISP
and let them know that their policies are causing mountebank tests to fail.
|Ubuntu 12.04||CentOS 6.7||OS X Mavericks||Windows Server 2012|
|npm (node v5.0)||(not tested)|
|npm (node v4.2)||(not tested)|
|npm (node v4.0)||(not tested)||(not tested)||(not tested)|
|npm (node v0.12)||(not tested)|
|npm (node v0.10)||(not tested)|
|Self-contained archive||(not tested)|
|(Performance)||(not tested)||(not tested)||(not tested)|
Contributions are welcome! Some tips for contributing are in the contributing link that spins up when you run mb. I have a liberal policy accepting pull requests - I'd rather you sent them even if you can't figure out how to get the build working, etc. I'm also available via Skype or something similar to help you get started. Feel free to reach me at firstname.lastname@example.org.