Comparison of API simulation tools

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):

NameFOSSFreeSupported protocols and APIsHas a GUIScriptable/ProgrammableDocker supportCloud 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
apiUi [9]Yes; GPL v3.0[10]YesHTTP(S); STOMP, Wsdl; Swagger; OpenApi; CobolYes[11]Yes[12]Yes[13]No
Beeceptor [14]No; Proprietary[15]Yes (Free plan)HTTP1.1; HTTP2; HTTP(S); SOAP, MITM/Proxing; Swagger; OpenApi; TLS 1.2; XML; Local tunnelingYesYes[16]NoYes
CamouflageYes; MIT[17]YesHTTP(S), HTTP/2 gRPC, Websockets, ThriftYes[18]Yes[19]Yes[20]No
Castle MockYes; Apache 2[21]YesHTTP(S)YesYesYesNo
Charles ProxyNo; Proprietary[22]NoHTTP(S)YesNoNoNo
Ekko ProxyNo; ProprietaryYes (non commercial use)[23]HTTP(S), JDBC; WSDL, Swagger, OpenApi, JWT.Yes[24]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[25]YesHTTP(S)YesYesYesYes [26]
HTTP ToolkitYes; AGPL[27]Yes (Hobbyist Edition)[28]HTTP(S)YesNoNoNo
Int4 IFTTNo; ProprietaryNoHTTP(S), Middleware virtualization: SAP Process Orchestration, SAP Intelligent Suite, Dell Boomi, Software AG Webmethods, SAP IDOCsYesYesNoNo
KarateYes; MIT[29]YesHTTP(S), Java interop[30]NoYes[30]NoNo
MockadilloNo; ProprietaryNo HTTP(S)[31]YesYesNoYes
MockletsNo; Proprietary[32]YesHTTP(S)YesNoNoYes [33]
MockoonYes; MIT[34]Yes HTTP(S)[35]YesYesYes [36]No
MockServerYes; 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
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 VirtualizeNo; 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
PostmanNo; 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
sMockinYes; Apache 2[62]YesHTTP, Websockets, Server Side Events, plus tools for real time monitoring & live response modificationYesYesYesNo
SmockerYes; MIT[63]YesHTTP(S)[64]YesYesYesNo
SmartMock.ioNo; Proprietary[65]Yes [66] HTTP(S)YesYesNoYes
specmatic.inYes; MIT[67]YesHTTP(S), Swagger, OpenAPI, WSDL, Kafka (WIP)NoYesNoNo
simulado Yes; MIT[68] Yes HTTP(S) No Yes Yes Yes
SoapUI MockServerYes; EUPL[69]YesHTTP(S)[70]Yes[70]No[70]No[70]No[70]
StoplightYes; Apache 2[71]Yes (Free Edition)[72]HTTP(S) and generate mocks directly from OpenAPIYesYesYesYes
Traffic Parrot No; Proprietary[73] No;[74] 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 [75]

In beta:[76] 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[73] Yes[77] Yes[73] Yes[78][73]
tweakNo; ProprietaryYesHTTP(S)YesNoNoNo
WilmaYes; GPL v3.0[79]Yes [80]HTTP(S)YesYesYes [81]No
WiremockYes; Apache 2[82]YesHTTP(S)NoYesYesYes [83]
WireMock.NetYes; Apache 2[84]YesHTTP(S)NoYesYes [85][86]No
WireshamYes; Apache 2[87]YesTCPNoYesNoNo

See also

References

  1. 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 how to mock api calls? how to test api calls?
  10. apiUi License
  11. The apiUi GUI
  12. apiUi Scripting; adding dynamics
  13. apiUi Docker
  14. Beeceptor eases API development and testing by allowing mocking, intercepting and MITM proxies
  15. Beeceptor pricing
  16. Handlebar templates for scripting; adding dynamic responses
  17. Camouflage License
  18. Camouflage UI
  19. Scripting in Camouflage
  20. Camouflage Docker
  21. Castle Mock License
  22. Charles Proxy EULA
  23. Ekko Proxy License Agreement
  24. Ekko Proxy Usage
  25. Hoverfly license
  26. Hoverfly Cloud
  27. HTTP Toolkit license
  28. HTTP Toolkit tiers
  29. Karate license
  30. Karate-Netty home page
  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. "Matthewgallina/Smockin". GitHub. 27 March 2022.
  63. Smocker License
  64. Smocker documentation
  65. SmartMock.io Terms of Use
  66. SmartMock.io pricing
  67. "Specmatic". GitHub.
  68. simulado license
  69. SoapUI Licence
  70. SoapUI MockServer documentation
  71. Prism Licence
  72. Stoplight Pricing
  73. Traffic Parrot home page
  74. Traffic Parrot pricing
  75. Traffic Parrot data sheet
  76. Traffic Parrot list of beta features
  77. Traffic Parrot Dynamic Responses Documentation
  78. Traffic Parrot is compatible with Docker, Kubernetes and Openshift
  79. Wilma License
  80. Wilma Feature list
  81. Docker images of Wilma
  82. Wiremock License
  83. Mocklab
  84. WireMock.Net License
  85. WireMock.Net .Net Core 2.0 Linux image
  86. WireMock.Net .Net Core 2.0 windows-nano image
  87. Wiresham License
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.