The tools listed here support emulating or simulating APIs and software systems. They are also called API mocking tools, service virtualization tools, over the wire test doubles and tools for stubbing and mocking HTTP(S) and other protocols. They enable component testing in isolation.
In alphabetical order by name (click on a column heading to sort by that column):
Name | FOSS | Free | Supported protocols and APIs | Has a GUI | Scriptable/Programmable | Docker support | Cloud offering |
---|---|---|---|---|---|---|---|
API Simulator | No; Proprietary | Yes | HTTP/2 with TLS ALPN; HTTP/2 with prior knowledge; HTTP/2 upgrade from HTTP/1.1; HTTP/1.x with and without TLS/SSL; HTTP(S) | Yes | Yes | Yes | No |
apiUi | Yes; GPL v3.0 | Yes | HTTP(S); STOMP, WSDL; Swagger; OpenAPI; Cobol | Yes | Yes | Yes | No |
Beeceptor | No; Proprietary | Yes (Free plan) | HTTP1.1; HTTP2; HTTP(S); SOAP, MITM/Proxing; Swagger; OpenAPI; TLS 1.2; XML; Local tunneling | Yes | Yes | Yes | Yes |
Camouflage | Yes; MIT | Yes | HTTP(S), HTTP/2 gRPC, Websockets, Thrift | Yes | Yes | Yes | No |
Castle Mock | Yes; Apache 2 | Yes | HTTP(S) | Yes | Yes | Yes | No |
Charles Proxy | No; Proprietary | No | HTTP(S) | Yes | No | No | No |
Ekko Proxy | No; Proprietary | Yes (non commercial use) | HTTP(S), JDBC; WSDL, Swagger, OpenApi, JWT. | Yes | Yes (Scriptable) | Yes | No |
HAM | Yes; MIT | Yes | HTTP(S), SOAP, MITM/Proxing, Swagger, XML, JSON, Jackson-Smile, Brotli, Record, Replay, Automatic tests, Schema verification, JDBC, MongoDb | Yes (Web) | Yes (Dynamic Javascript and Java Plugins) | Yes | No |
Hoverfly | Yes; Apache 2 | Yes | HTTP(S) | Yes | Yes | Yes | Yes |
HTTP Toolkit | Yes; AGPL | Yes (Hobbyist Edition) | HTTP(S) | Yes | No | No | No |
Int4 IFTT | No; Proprietary | No | HTTP(S), Middleware virtualization: SAP Process Orchestration, SAP Intelligent Suite, Dell Boomi, Software AG Webmethods, SAP IDOCs | Yes | Yes | No | No |
Karate | Yes; MIT | Yes | HTTP(S), Java interop | No | Yes | No | No |
Microcks | Yes; Apache 2 | Yes | HTTP(S), SOAP, gRPC, GraphQL, AsyncAPI | Yes | Yes | Yes | No |
Mockadillo | No; Proprietary | No | HTTP(S) | Yes | Yes | No | Yes |
Mocklets | No; Proprietary | Yes | HTTP(S) | Yes | No | No | Yes |
Mockoon | Yes; MIT | Yes | HTTP(S) | Yes | Yes | Yes | No |
MockServer | Yes; Apache 2 | Yes | HTTP(S) | Yes | Yes | Yes | No |
mock.qa | No; Proprietary | Yes (Free plan) | gRPC, gRPC-web, HTTP/1.x, HTTP/2 | Yes (Web) | Yes (Scripting language, Request matching, Response templating, Data generation, Stateful scenarios) | No | Yes |
Mountebank | Yes; MIT | Yes | HTTP(S), TCP, SMTP | No | Yes | Yes | No |
NetOcean | No; Proprietary | No | Web Services Protocols: HTTP, HTTPS, HTTP2, REST, SOAP, Hessian Others: IMAP, FTP, DNS, XML, JSON, WebSocket ESB / Middleware Protocols, TIBCO JMS Database Protocols: JDBC Proprietary: TCP, UDP Platforms: TIBCO-EMS, IBM-MQ, Kafka SOA Protocols: SOAP, HTTP, XML, REST SMS Gateway Providers: SMTP, POP3 Bill Payments Services: Gift card- PINPAD, AJB | Yes | Yes | Yes | Yes |
Parasoft Virtualize | No; Proprietary | Yes (Community Edition) | AMQP, FIX, FTP, HTTP(S), ISO 8583, JMS, JDBC, MQ, MQTT, .NET WCF, RabbitMQ, SAP, TCP/IP, etc. | Yes | Yes | Yes | Yes |
Postman | No; Proprietary | Yes (Free Edition) | HTTP(S) | Yes | Yes (JSON Examples) | No | Yes |
ProxyMan | No; Proprietary | Yes, (Limited) | HTTP(S), Websockets | Yes | Yes | No | No |
QuickMocker | No; Proprietary | Yes (Free Subscription) | HTTP(S) | Yes | Yes | No | Yes |
Rapidmock | No; Proprietary | Yes (Free Edition) | HTTP(S) | Yes | No | No | Yes |
Requestly | Yes; GPL v3.0 | Yes | HTTP(S) | Yes | Yes | No | Yes |
sMockin | Yes; Apache 2 | Yes | HTTP, Websockets, Server Side Events, plus tools for real time monitoring & live response modification | Yes | Yes | Yes | No |
Smocker | Yes; MIT | Yes | HTTP(S) | Yes | Yes | Yes | No |
SmartMock.io | No; Proprietary | Yes | HTTP(S) | Yes | Yes | No | Yes |
specmatic.in | Yes; MIT | Yes | HTTP(S), Swagger, OpenAPI, WSDL, Kafka (WIP) | No | Yes | No | No |
simulado | Yes; MIT | Yes | HTTP(S) | No | Yes | Yes | Yes |
SoapUI MockServer | Yes; EUPL | Yes | HTTP(S) | Yes | No | No | No |
Speedscale | No; Proprietary | Yes, (Free Trial) | HTTP(S), gRPC, GraphQL webservices, Message queues, OSS Databases | Yes | No, Not required. Traffic recording-based | Yes | Yes |
Stoplight | Yes; Apache 2 | Yes (Free Edition) | HTTP(S) and generate mocks directly from OpenAPI | Yes | Yes | Yes | Yes |
TPM-Proxy | Yes; MIT | Yes | Direct Wire Protocol implementation: HTTP(S), SOAP, MITM/Proxing, OpenAPI, XML, JSON, Jackson-Smile, Brotli, MongoDb, Postgres, MySQL, AMQP 091, MQTT, REDIS, Record, Replay, Modify | Yes | Yes (Java Plugins) | Yes | No |
Traffic Parrot | No; Proprietary | No; | HTTP(S) including REST and SOAP gRPC JMS (ActiveMQ TCP, ActiveMQ AMQP 1.0, Azure AMQP 1.0, RabbitMQ AMQP 0.9.1, IBM® WebSphere MQ 7.5+) Native IBM® WebSphere MQ 7.5+ Thrift AMQP 1.0 File transfers over a filesystem Amazon Simple Queue Service (SQS) Azure Service Bus AMQP 1.0 In beta:FIX, FAST, FIXatdl, SWIFT, MQTT, SonicMQ, Kafka,CORBA, FTP, SFTP, .NET WCF, RMI, MTP,TIBCO EMS, CICS, SAP RFC, JDBC, Mongo, Databases,OFX, IFX, RIXML, AS2,Amazon Simple Notification Service(SNS), AWS IoT Message Broker, XMPP,Google Cloud Messaging (GCM), Azure Event Grid, Azure Event Hubs,STOMP, Avro, HTTP/2 (HTTP2), LWM2M, CoAP (Constrained Application Protocol), ZeroMQ, Broker-J(BrokerJ), Qpid, QUIC and gQUIC (Google QUIC) | Yes | Yes | Yes | Yes |
tweak | No; Proprietary | Yes | HTTP(S) | Yes | No | No | No |
Tricentis API Simulation | No; Proprietary | Yes(Free Edition) | Http(s), AmazonSqs, AMQP, AzureServiceBus, Files, IbmMQ, Kafka, RabbitMQ, Solace | Yes | Yes | Yes | Yes |
Wilma | Yes; GPL v3.0 | Yes | HTTP(S) | Yes | Yes | Yes | No |
WireMock | Yes; Apache 2 | Yes | HTTP(S), gRPC, GraphQL | Yes | Yes | Yes | Yes |
WireMock.Net | Yes; Apache 2 | Yes | HTTP(S) | No | Yes | Yes | No |
Wiresham | Yes; Apache 2 | Yes | TCP | No | Yes | No | No |
See also
References
Thought Works Technology Radar Mountebank https://www.thoughtworks.com/radar/tools/mountebank ↩
Tom Akehurst at the Next Gen Service Virtualisation Forum https://www.youtube.com/watch?v=Lesn4L3k6HE ↩
Thought Works Technology Radar Mountebank https://www.thoughtworks.com/radar/tools/mountebank ↩
Martin Fowler, Microservce Testing, Component Testing https://martinfowler.com/articles/microservice-testing/#testing-component-introduction ↩
API Simulator License Agreement https://apisimulator.io/license-agreement/ ↩
API Simulation Modeler https://apisimulator.io/doc/api-simulation-modeler/ ↩
Scripting in API Simulator https://apisimulator.io/doc/standalone-api-simulator-scripting/ ↩
Simula Template Scriptlets https://apisimulator.io/doc/standalone-api-simulator-template-scriptlets/ ↩
API Simulator in Docker Container https://apisimulator.io/doc/api-simulator-in-docker-container/ ↩
apiUi how to mock api calls? how to test api calls? https://www.apiui.org/ ↩
apiUi License https://github.com/apiUi/apiUi/blob/main/COPYING ↩
The apiUi GUI https://www.apiui.org/apiuigui/ ↩
apiUi Scripting; adding dynamics https://www.apiui.org/scripting/ ↩
apiUi Docker https://hub.docker.com/repository/docker/apiui/apiuiserver ↩
Beeceptor eases API development and testing by allowing mocking, intercepting and MITM proxies https://beeceptor.com/service-virtualization/ ↩
Beeceptor pricing https://beeceptor.com/pricing ↩
Handlebar templates for scripting; adding dynamic responses https://docs.beeceptor.com/docs/features-response-templates ↩
Camouflage License https://github.com/testinggospels/camouflage/blob/main/LICENSE ↩
Camouflage UI http://camouflage-server.herokuapp.com/ ↩
Scripting in Camouflage https://testinggospels.github.io/camouflage/handlebars/#code ↩
Camouflage Docker https://hub.docker.com/repository/docker/shubhendumadhukar/camouflage ↩
Castle Mock License https://github.com/castlemock/castlemock/blob/master/LICENSE ↩
Charles Proxy EULA https://www.charlesproxy.com/buy/eula/ ↩
Ekko Proxy License Agreement https://www.ekkoproxy.com/eula.html ↩
Ekko Proxy Usage https://www.ekkoproxy.com/usage.html ↩
Hoverfly license https://github.com/SpectoLabs/hoverfly/blob/master/LICENSE ↩
Hoverfly Cloud https://cloud.hoverfly.io ↩
HTTP Toolkit license https://github.com/httptoolkit/httptoolkit-desktop/blob/master/LICENSE ↩
HTTP Toolkit tiers https://httptoolkit.tech/pricing/ ↩
Karate license https://github.com/intuit/karate/blob/master/LICENSE ↩
Karate-Netty home page https://github.com/intuit/karate/tree/master/karate-netty ↩
Karate-Netty home page https://github.com/intuit/karate/tree/master/karate-netty ↩
Microcks License https://github.com/microcks/microcks/blob/master/LICENSE ↩
Using Microcks https://microcks.io/documentation/using/ ↩
"Mockadillo". Mockadillo Homepage. https://mockadillo.com ↩
Mocklets Terms of Use https://mocklets.com/terms ↩
Mocklets https://mocklets.com/ ↩
Mockoon license https://github.com/mockoon/mockoon/blob/master/LICENSE.md ↩
"Mockoon". Mockoon features page. https://mockoon.com/features/ ↩
Mockoon CLI dockerhub https://hub.docker.com/r/mockoon/cli ↩
MockServer License https://github.com/jamesdbloom/mockserver/blob/master/LICENSE.md ↩
MockServer Dashboard https://github.com/jamesdbloom/mockserver-ui ↩
Mock.qa: Free plan on GitHub Markeplace https://github.com/marketplace/mockqa-grpc/plan/MLP_kgDNHMU#pricing-and-setup ↩
Mock.qa: Supported protocols https://mock.qa/docs/supported-protocols ↩
Mock.qa: Playground https://mock.qa/docs/playground ↩
Mock.qa: Configuration https://mock.qa/docs/yaml-config ↩
Mock.qa: Configuration examples https://mock.qa/docs/examples ↩
Mock.qa: Scripting language https://mock.qa/docs/scripting-language ↩
Mock.qa: Request matching https://mock.qa/docs/request-matching ↩
Mock.qa: Response templating https://mock.qa/docs/response-templating ↩
Mock.qa: Data generation https://mock.qa/docs/data-generation ↩
Mock.qa: Stateful scenarios https://mock.qa/docs/stateful-scenarios ↩
Mountebank license https://github.com/bbyars/mountebank/blob/master/LICENSE ↩
Moutebank home page http://www.mbtest.org/ ↩
Mountebank injection http://www.mbtest.org/docs/api/injection ↩
Running Mountebank in Docker https://blog.codecentric.de/en/2015/06/mock-server-powered-by-mountebank-and-docker/ ↩
Parasoft Virtualize Community Edition http://software.parasoft.com/virtualize/community-edition/ ↩
Parasoft Virtualize home page https://www.parasoft.com/product/parasoft-service-virtualization/#supp_env ↩
Virtualize Docker Files 1.0 https://docs.parasoft.com/display/SOAVIRT9103CTP310/Virtualize+Docker+Files+1.0 ↩
Postman Pricing https://www.postman.com/pricing/ ↩
Proxyman Pricing https://proxyman.io/pricing ↩
Proxyman scripting https://docs.proxyman.io/scripting/script ↩
QuickMocker Pricing https://quickmocker.com/#pricing ↩
QuickMocker RegExp & Shortcodes https://quickmocker.com/faq ↩
Rapidmock home page https://rapidmock.com/ ↩
"requestly/requestly". GitHub. https://github.com/requestly/requestly/blob/master/LICENSE ↩
Requestly Pricing https://app.requestly.io/pricing ↩
Requestly Clound Based Mock Server https://requestly.com/blog/simplifying-api-testing-with-requestly-api-mock-service/ ↩
"Matthewgallina/Smockin". GitHub. 27 March 2022. https://github.com/mgtechsoftware/smockin/blob/master/LICENSE ↩
Smocker License https://github.com/Thiht/smocker/blob/master/LICENSE ↩
Smocker documentation https://smocker.dev/guide/ ↩
SmartMock.io Terms of Use https://smartmock.io/terms ↩
SmartMock.io pricing https://smartmock.io/pricing ↩
"Specmatic". GitHub. https://github.com/znsio/specmatic/blob/main/License.md ↩
simulado license https://github.com/ldabiralai/simulado/blob/master/LICENSE ↩
SoapUI Licence https://github.com/SmartBear/soapui/blob/next/LICENSE.txt ↩
SoapUI MockServer documentation https://www.soapui.org/soap-mocking/service-mocking-overview.html ↩
SoapUI MockServer documentation https://www.soapui.org/soap-mocking/service-mocking-overview.html ↩
SoapUI MockServer documentation https://www.soapui.org/soap-mocking/service-mocking-overview.html ↩
SoapUI MockServer documentation https://www.soapui.org/soap-mocking/service-mocking-overview.html ↩
SoapUI MockServer documentation https://www.soapui.org/soap-mocking/service-mocking-overview.html ↩
"Speedscale Free Trial Version". Speedscale. Retrieved 2024-03-20. https://speedscale.com/ ↩
"Technology Support | Speedscale Docs". docs.speedscale.com. Retrieved 2024-03-20. https://docs.speedscale.com/reference/technology-support/ ↩
"How Traffic Recording Works". Speedscale. Retrieved 2024-03-20. https://speedscale.com/kubernetes-traffic-replay/ ↩
Prism Licence https://github.com/stoplightio/prism/blob/master/LICENSE ↩
Stoplight Pricing https://stoplight.io/pricing/ ↩
Traffic Parrot home page http://trafficparrot.com/ ↩
Traffic Parrot pricing https://trafficparrot.com/buy.html ↩
Traffic Parrot data sheet https://trafficparrot.com/documentation/?redirectToLatest=true&path=/data_sheet.html ↩
Traffic Parrot list of beta features https://trafficparrot.com/beta.html ↩
Traffic Parrot home page http://trafficparrot.com/ ↩
Traffic Parrot Dynamic Responses Documentation http://trafficparrot.com/documentation/5.30.x/dynamic.html ↩
Traffic Parrot home page http://trafficparrot.com/ ↩
Traffic Parrot is compatible with Docker, Kubernetes and Openshift http://trafficparrot.com/documentation/5.30.x/user_guide.html#running-docker ↩
Traffic Parrot home page http://trafficparrot.com/ ↩
https://www.tricentis.com/products/tricentis-test-automation https://www.tricentis.com/products/tricentis-test-automation ↩
https://www.tricentis.com/products/tricentis-test-automation https://www.tricentis.com/products/tricentis-test-automation ↩
https://www.tricentis.com/products/tricentis-test-automation https://www.tricentis.com/products/tricentis-test-automation ↩
https://documentation.tricentis.com/tricentis_cloud/en/content/topics/sim_get_started.htm https://documentation.tricentis.com/tricentis_cloud/en/content/topics/sim_get_started.htm ↩
https://www.tricentis.com/products/tricentis-test-automation https://www.tricentis.com/products/tricentis-test-automation ↩
Wilma License https://github.com/epam/Wilma/blob/master/COPYRIGHT.txt ↩
Wilma Feature list https://epam.github.io/Wilma/endusers/feature_list.html ↩
Docker images of Wilma https://github.com/epam/Wilma/wiki/Docker-image-of-Wilma ↩
WireMock License https://github.com/wiremock/wiremock/blob/master/LICENSE.txt ↩
WireMock Cloud https://www.wiremock.io/product ↩
WireMock.Net License https://raw.githubusercontent.com/WireMock-Net/WireMock.Net/master/LICENSE ↩
WireMock.Net .Net Core 2.0 Linux image https://hub.docker.com/r/sheyenrath/wiremock.net ↩
WireMock.Net .Net Core 2.0 windows-nano image https://hub.docker.com/r/sheyenrath/wiremock.net-nano/ ↩
Wiresham License https://github.com/abstracta/wiresham/blob/master/LICENSE ↩