Frequently Asked Questions


What is Artillery?

Artillery is a tool for generating load on HTTP, Socket.io, and WebSocket-based applications. It provides support for scripting complex virtual user interactions (for example acquiring an auth token, performing a search operation, and then loading one of the search results), as well as detailed stats and graphical reports to help analyse performance.

What can be tested with Artillery?

Artillery is great for testing ecommerce websites, API servers, microservices or any applications that speak HTTP, Socket.io or WebSockets.

How is Artillery different than ab / wrk / JMeter / Gatling?

Artillery has a strong focus on developer happiness and a batteries-included philosophy.

Artillery is open-source like ab, wrk, JMeter and Gatling.

Artillery has a "quick" mode which allows for it to be used in a manner similar to ab or wrk. JMeter and Gatling require that a full scenario be written for every test.

Artillery supports scripting virtual user behavior like JMeter and Gatling (but not ab or wrk).

Artillery uses simple & readable JSON/YAML or Javascript for scripting, whereas Gatling uses Scala, JMeter uses XML and wrk uses Lua.

JMeter and Gatling run on the JVM, whereas Artillery is written in Node.js making it easier to install and more lightweight.

Artillery has WebSocket support out of the box, like Gatling. JMeter requires a plugin (ab and wrk only support HTTP). Artillery has native support for Socket.io unlike either JMeter or Gatling.

How much load can I generate with Artillery?

You can expect to generate around 1.2k RPS on an entry level VPS. We are working on an extensive suite of benchmarks to be published soon.

If you run Artillery in distributed mode, then the load is only constrained by the number of machines and their specs.

Is there a hosted version of Artillery?

Not yet, but we are working on it. Follow @ShoreditchOps for updates or contact us today to discuss early access.