Load testing package for Meteor

Hi everybody, I have developed an extension for Artillery load testing tool which adds Meteor DDP support:

  1. Github: Artillery-engine-meteor
  2. NPM: Artillery-engine-meteor

Installation

npm i -g artillery
npm i -g artillery-engine-meteor

Configuration

Configuration is pretty simple and looks like:

config:
  target: "ws://localhost:3000/websocket" # your app url
  phases:
    - duration: 60
      arrivalRate: 20
  engines:
    meteor: {} # include meteor engine
scenarios:
  - engine: "meteor" # meteor scenario
    flow: # scenario flow
      - login: # login first
          username: USERNAME
          password: PASSWORD
      - call: # then Meteor.call
          name: "method name"
          payload: # make sure payload is Array type
            - _id: "Payload"
      - subscribe: # subscribe to publication
          name: "pub name"
          payload: # make sure payload is Array type
            - "Payload"

I know we already have great load testing tools for meteor like meteor-down, jmeter using ws.
So you may consider my solution as yet another load testing package =)

12 Likes

Great stuff, thanks for sharing. I had never even heard of Artillery, so Iā€™m going to give it a try!

1 Like