Azurite vs mountebank
Azurite
github.commountebank
mbtest.devSide by side
| Figure | Azurite | mountebank |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | — |
| macOS | Yes | — |
| Linux | Yes | Yes |
| API | — | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Service Virtualization Software | 8.2 (#8) | 7.6 (#15) |
| Purpose | Azurite is an open source Azure Storage API compatible server emulator for trying Azure Storage in a local environment. | mountebank provides cross-platform, multi-protocol test doubles over the wire for testing applications in place of real dependencies. |
Plans
In their own words
Azurite
Azurite is a free, open-source server emulator for trying Azure Storage APIs on a local machine. Azurite V3 supports Blob and Queue storage, while Table storage is marked preview. Blob functionality includes containers, block and page blobs, service properties, and CRC-64/NVME transactional checksum checks for specified writes. Queue operations cover creating queues and putting, getting, peeking, updating, deleting, and clearing messages. Documented authentication includes Shared Key, account and service SAS, OAuth, and supported public access. It works with Azure Storage SDKs, Azure CLI, and Storage Explorer. Installation options are npm, Docker, a Visual Studio Code extension, or cloning and building the source. The npm route supports Windows, Linux, and macOS with supported Node.js LTS versions. Local hosts, ports, workspace, and optional in-memory persistence are configurable. Telemetry is enabled by default, with an execution-level disable option. It uses the MIT License.
mountebank
mountebank is a free, self-hosted service-virtualization tool that supplies test doubles instead of real application dependencies. Through its HTTP API, developers configure stubs, record and replay proxies, and verify mock expectations. HTTP, HTTPS, TCP, and SMTP are built in; community plugins add LDAP, WebSockets, GraphQL, SNMP, Telnet, SSH, and NETCONF. Installation documentation covers npm and Docker. Community extensions list client libraries for C#, Clojure, Go, Java, JavaScript, Python, Ruby, TypeScript, and Swift, along with Grunt, Gradle, and Maven plugins. Stateful simulation, fault injection, and record-and-replay are supported. By default, mountebank stores everything in memory, which its site says can become a performance bottleneck at scale. Security guidance warns that JavaScript injection can permit code execution on the machine and recommends localhost-only access or an IP whitelist. CORS is disabled by default, and safe origins can be enabled explicitly.