Skip to content
🎲 Makes chance.js available for Artillery loadtest configurations.
JavaScript
Branch: master
Clone or download
Pull request Compare This branch is 10 commits ahead of fabsrc:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
LICENSE
README.md
example.yml
index.js
package-lock.json
package.json

README.md

Beyonk

Artillery Chance Plugin

js-standard-style CircleCI

Makes chance.js available for Artillery loadtest configurations.

This plugin has been built on the excellent work of artillery-plugin-faker

Install

$ npm install -g artillery-plugin-chance

Usage

Add the plugin to your loadtest configuration:

config:
  plugins:
    chance: {}

Config

You can change the prefix for your chance variables:

config:
  plugins:
    chance: {
      prefix: '^'
    }

Example

Creating variables in the variables section of your config with the prefix defined by prefix (default ~) will cause chance to be called for each of these variables, each request.

Each item is either a simple string, which represents the chance function to call, or a hash containing a key method which defines the chance funciton. All other items in the hash are passed as a configuration hash to the method.

Note that any conflicting variable names (i.e. without prefix) will overwrite the variables you have alrady defined at the top level.

Then, you can use these variables as you usually would in your scenarios:

config:
  plugins:
    chance: {}
  variables:
    - ~fullName: 'name'
    - ~englishWithMiddle:
        method: 'name'
        middle: true
        nationality: 'en'
  scenarios:
    - flow:
      - get:
          url: "/search?q={{ englishWithMiddle }}"
    - flow:
      - get:
          url: "/search?q={{ fullName }}"

For a complete list of available chance.js functions, have a look at the chance.js documentation.

Have a look at the example.yml file for a fully working example.

You can’t perform that action at this time.