Comparison of API simulation tools

Last updated

The tools listed here support emulating [1] or simulating APIs and software systems. They are also called [2] API mocking tools, service virtualization tools, over the wire test doubles and tools for stubbing and mocking HTTP(S) and other protocols. [1] They enable component testing in isolation. [3]

In alphabetical order by name (click on a column heading to sort by that column):

Name FOSS FreeSupported protocols and APIsHas a GUI Scriptable/Programmable
Docker support
Cloud offering
API SimulatorNo; Proprietary [4] YesHTTP/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 [5] Yes [6] [7] Yes [8] No
apiUiYes; GPL v3.0 [9] YesHTTP(S); STOMP, WSDL; Swagger; OpenAPI; CobolYes [10] Yes [11] Yes [12] No
BeeceptorNo; Proprietary [13] Yes (Free plan)HTTP1.1; HTTP2; HTTP(S); SOAP, MITM/Proxing; Swagger; OpenAPI; TLS 1.2; XML; Local tunnelingYesYes [14] YesYes
CamouflageYes; MIT [15] YesHTTP(S), HTTP/2 gRPC, Websockets, ThriftYes [16] Yes [17] Yes [18] No
Charles ProxyNo; Proprietary [19] NoHTTP(S)YesNoNoNo
Ekko ProxyNo; ProprietaryYes (non commercial use) [20] HTTP(S), JDBC; WSDL, Swagger, OpenApi, JWT.Yes [21] Yes (Scriptable)YesNo
HAMYes; MITYesHTTP(S), SOAP, MITM/Proxing, Swagger, XML, JSON, Jackson-Smile, Brotli, Record, Replay, Automatic tests, Schema verification, JDBC, MongoDbYes (Web)Yes (Dynamic Javascript and Java Plugins)YesNo
HoverflyYes; Apache 2 [22] YesHTTP(S)YesYesYesYes [23]
HTTP ToolkitYes; AGPL [24] Yes (Hobbyist Edition) [25] HTTP(S)YesNoNoNo
Int4 IFTTNo; ProprietaryNoHTTP(S), Middleware virtualization: SAP Process Orchestration, SAP Intelligent Suite, Dell Boomi, Software AG Webmethods, SAP IDOCsYesYesNoNo
KarateYes; MIT [26] YesHTTP(S), Java interop [27] NoYes [27] NoNo
KeployYesYesHTTP(S), OpenAPI, gRPCYesYesYesYes
LogDogNo; Proprietary [28] NoHTTP(S), HTML, XML, JSON, Replay, Real-Time-Monitoring, 1-Click-MocksYesYesNoYes
MicrocksYes; Apache 2 [29] YesHTTP(S), SOAP, gRPC, GraphQL, AsyncAPI [30] YesYesYesNo
MockadilloNo; ProprietaryNoHTTP(S) [31] YesYesNoYes
MockletsNo; Proprietary [32] YesHTTP(S)YesNoNoYes [33]
MockoonYes; MIT [34] YesHTTP(S) [35] YesYesYes [36] No
MockServer Yes; Apache 2 [37] YesHTTP(S)Yes [38] YesYesNo
mock.qaNo; ProprietaryYes (Free plan) [39] gRPC, gRPC-web, HTTP/1.x, HTTP/2 [40] Yes [41] (Web)Yes [42] [43] (Scripting language, [44] Request matching, [45] Response templating, [46] Data generation, [47] Stateful scenarios [48] )NoYes
MountebankYes; MIT [49] YesHTTP(S), TCP, SMTP [50] NoYes [51] Yes [52] No
NetOceanNo; ProprietaryNoWeb 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

YesYesYesYes
Parasoft Virtualize No; ProprietaryYes (Community Edition) [53] AMQP, FIX, FTP, HTTP(S), ISO 8583, JMS,
JDBC, MQ, MQTT, .NET WCF, RabbitMQ, SAP, TCP/IP, etc. [54]
YesYesYes [55] Yes
Postman No; ProprietaryYes (Free Edition) [56] HTTP(S)YesYes (JSON Examples)NoYes
ProxyManNo; ProprietaryYes, [57] (Limited)HTTP(S), WebsocketsYesYes [58] NoNo
QuickMockerNo; ProprietaryYes (Free Subscription) [59] HTTP(S)YesYes [60] NoYes
RapidmockNo; Proprietary [61] Yes (Free Edition)HTTP(S)YesNoNoYes
RequestlyYes; GPL v3.0 [62] Yes [63] HTTP(S)YesYesNoYes [64]
sMockinYes; Apache 2 [65] YesHTTP, Websockets, Server Side Events, plus tools for real time monitoring & live response modificationYesYesYesNo
SmockerYes; MIT [66] YesHTTP(S) [67] YesYesYesNo
SmartMock.ioNo; Proprietary [68] Yes [69] HTTP(S)YesYesNoYes
SpecmaticYes; MIT [70] Yes (Basic Plan) [71] HTTP(S), Swagger, OpenAPI, WSDL, Kafka, AsyncAPI, GraphQL, gRPC, Arazzo, Protobuf, JDBC, Redis, JMS, Google Pub/Sub [72] Yes [73] YesYesYes
simuladoYes; MIT [74] YesHTTP(S)NoYesYesYes
SoapUI MockServerYes; EUPL [75] YesHTTP(S) [76] Yes [76] No [76] No [76] No [76]
SpeedscaleNo; ProprietaryYes, (Free Trial) [77] HTTP(S), gRPC, GraphQL webservices, Message queues, OSS Databases [78] YesNo, Not required. Traffic recording-based [79] YesYes
StoplightYes; Apache 2 [80] Yes (Free Edition) [81] HTTP(S) and generate mocks directly from OpenAPIYesYesYesYes
TPM-ProxyYes; MITYesDirect Wire Protocol implementation: HTTP(S), SOAP, MITM/Proxing, OpenAPI, XML, JSON, Jackson-Smile, Brotli, MongoDb, Postgres, MySQL, AMQP 091, MQTT, REDIS, Record, Replay, ModifyYesYes (Java Plugins)YesNo
tweakNo; ProprietaryYesHTTP(S)YesNoNoNo
Tricentis API SimulationNo; ProprietaryYes(Free Edition) [82] Http(s), AmazonSqs, AMQP, AzureServiceBus, Files, IbmMQ, Kafka, RabbitMQ, SolaceYes [82] Yes [82] Yes [83] Yes [82]
WilmaYes; GPL v3.0 [84] Yes [85] HTTP(S)YesYesYes [86] No
WireMockYes; Apache 2 [87] YesHTTP(S), gRPC, GraphQLYesYesYesYes [88]
WireMock.NetYes; Apache 2 [89] YesHTTP(S)NoYesYes [90] [91] No
WireshamYes; Apache 2 [92] YesTCPNoYesNoNo

See also

References

  1. 1 2 Thought Works Technology Radar Mountebank
  2. Tom Akehurst at the Next Gen Service Virtualisation Forum
  3. Martin Fowler, Microservce Testing, Component Testing
  4. API Simulator License Agreement
  5. API Simulation Modeler
  6. Scripting in API Simulator
  7. Simula Template Scriptlets
  8. API Simulator in Docker Container
  9. apiUi License
  10. The apiUi GUI
  11. apiUi Scripting; adding dynamics
  12. apiUi Docker
  13. Beeceptor pricing
  14. Handlebar templates for scripting; adding dynamic responses
  15. Camouflage License
  16. Camouflage UI
  17. Scripting in Camouflage
  18. Camouflage Docker
  19. Charles Proxy EULA
  20. Ekko Proxy License Agreement
  21. Ekko Proxy Usage
  22. Hoverfly license
  23. Hoverfly Cloud
  24. HTTP Toolkit license
  25. HTTP Toolkit tiers
  26. Karate license
  27. 1 2 Karate-Netty home page
  28. LogDog
  29. Microcks License
  30. Using Microcks
  31. "Mockadillo". Mockadillo Homepage.
  32. Mocklets Terms of Use
  33. Mocklets
  34. Mockoon license
  35. "Mockoon". Mockoon features page.
  36. Mockoon CLI dockerhub
  37. MockServer License
  38. MockServer Dashboard
  39. Mock.qa: Free plan on GitHub Markeplace
  40. Mock.qa: Supported protocols
  41. Mock.qa: Playground
  42. Mock.qa: Configuration
  43. Mock.qa: Configuration examples
  44. Mock.qa: Scripting language
  45. Mock.qa: Request matching
  46. Mock.qa: Response templating
  47. Mock.qa: Data generation
  48. Mock.qa: Stateful scenarios
  49. Mountebank license
  50. Moutebank home page
  51. Mountebank injection
  52. Running Mountebank in Docker
  53. Parasoft Virtualize Community Edition
  54. Parasoft Virtualize home page
  55. Virtualize Docker Files 1.0
  56. Postman Pricing
  57. Proxyman Pricing
  58. Proxyman scripting
  59. QuickMocker Pricing
  60. QuickMocker RegExp & Shortcodes
  61. Rapidmock home page
  62. "requestly/requestly". GitHub .
  63. Requestly Pricing
  64. Requestly Clound Based Mock Server
  65. "Matthewgallina/Smockin". GitHub . 27 March 2022.
  66. Smocker License
  67. Smocker documentation
  68. SmartMock.io Terms of Use
  69. SmartMock.io pricing
  70. "Specmatic". GitHub .
  71. "Pricing - Specmatic".
  72. Specmatic Studio
  73. simulado license
  74. SoapUI Licence
  75. 1 2 3 4 5 SoapUI MockServer documentation
  76. "Speedscale Free Trial Version". Speedscale. Retrieved 2024-03-20.
  77. "Technology Support | Speedscale Docs". docs.speedscale.com. Retrieved 2024-03-20.
  78. "How Traffic Recording Works". Speedscale. Retrieved 2024-03-20.
  79. Prism Licence
  80. Stoplight Pricing
  81. "Simulate services".
  82. Wilma License
  83. Wilma Feature list
  84. Docker images of Wilma
  85. WireMock License
  86. WireMock Cloud
  87. WireMock.Net License
  88. WireMock.Net .Net Core 2.0 Linux image
  89. WireMock.Net .Net Core 2.0 windows-nano image
  90. Wiresham License