Skip to content

🎲 Makes chance.js available for Artillery loadtest configurations.

License

Notifications You must be signed in to change notification settings

beyonk-group/artillery-plugin-chance

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation





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.