Makes chance.js available for Artillery loadtest configurations.
This plugin has been built on the excellent work of artillery-plugin-faker
$ npm install -g artillery-plugin-chance
Add the plugin to your loadtest configuration:
config:
plugins:
chance: {}
You can change the prefix for your chance variables:
config:
plugins:
chance: {
prefix: '^'
}
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.