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 offeringQuick start guide
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]NoBasic Concepts
Charles ProxyNo; Proprietary[9]NoHTTP(S)YesNoNoNoCharles Proxy Getting Started
Ekko ProxyNo; ProprietaryYes (non commercial use)[10]HTTP(S), plus various tools to securely compare, encode/decode, format, match, and hash data, validate / encode JWT tokens.Yes[11]Yes (Scriptable)YesNoEkko Proxy
HoverflyYes; Apache 2[12]YesHTTP(S)YesYesYesYes [13]Hoverfly introduction
HTTP ToolkitYes; AGPL[14]Yes (Hobbyist Edition)[15]HTTP(S)YesNoNoNo
KarateYes; MIT[16]YesHTTP(S), Java interop[17]NoYes[18]NoNoQuick Start
MockadilloNo; ProprietaryNo HTTP(S)[19]YesYesNoYes
MockletsNo; Proprietary[20]YesHTTP(S)YesNoNoYes [21]Mocklets Documentation
MockServerYes; Apache 2[22]YesHTTP(S)Yes[23]YesYesNoMockServer Getting Started
MountebankYes; MIT[24]YesHTTP(S), TCP, SMTP[25]NoYes[26]Yes[27]NoMountebank Getting Started
Parasoft VirtualizeNo; ProprietaryYes (Community Edition)[28]AMQP, FIX, FTP, HTTP(S), ISO 8583, JMS,
JDBC, MQ, MQTT, .NET WCF, RabbitMQ, SAP, TCP/IP, etc.[29]
YesYesYes[30]Yes
sMockinYes; Apache 2[31]YesHTTP, Websockets, Server Side Events, JMS (Queues and Topics), FTPYesNoNoNo
simulado Yes; MIT[32] Yes HTTP(S) No Yes Yes Yes simulado GitHub page
SoapUI MockServerYes; EUPL[33]YesHTTP(S)[34]Yes[34]No[34]No[34]No[34]MockServer quick start
Traffic ParrotPartial[35]; Proprietary[36]NoHTTP(S), JMS (Queues and Topics), IBM® MQ, File transfers, gRPC, Amazon Simple Queue Service (SQS), Azure AMQP Service Bus[36]

In beta[37]: FIX, FAST, FIXatdl, SWIFT, AMQP, MQTT, RabbitMQ, 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,
Azure Service Bus, STOMP, Thrift, Avro, HTTP/2 (HTTP2), LWM2M, CoAP (Constrained Application Protocol), ZeroMQ, Broker-J (BrokerJ), Qpid, QUIC and gQUIC (Google QUIC)
Yes[36]Yes[38]Yes[36]Yes[39][36]Traffic Parrot Quick Start
tweakNo; ProprietaryYesHTTP(S)YesNoNoNotweak official website
WilmaYes; GPL v3.0[40]Yes [41]HTTP(S)YesYesYes [42]NoWilma - combined stub and proxy
WiremockYes; Apache 2[43]YesHTTP(S)NoYesYesYes [44]Wiremock Getting Started
WireMock.NetYes; Apache 2[45]YesHTTP(S)NoYesYes [46] [47]NoWireMock.Net Wiki
WireshamYes; Apache 2[48]YesTCPNoYesNoNoWiresham Repo

See also

References

[1]

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.