I'm trying to run a load test on my AeroGear UnifiedPush Server running on CentOS 7 using the guide provided here. I did this once on my ubuntu desktop machine and everything worked well. However, I get syntax error while trying to run artillery.
Here's the result of installation:
[root@ddn-srv ~]# npm install -g artillery
npm WARN deprecated nomnom@1.5.2: Package no longer supported. Contact support@npmjs.com for more info.
/usr/bin/artillery -> /usr/lib/node_modules/artillery/bin/artillery
> jsonpath@1.0.0 postinstall /usr/lib/node_modules/artillery/node_modules/jsonpath
> node lib/aesprim.js > generated/aesprim-browser.js
/usr/lib
└─┬ artillery@1.6.0-26
├─┬ arrivals@2.1.2
│ ├─┬ debug@4.1.1
│ │ └── ms@2.1.1
│ └── nanotimer@0.3.14
├─┬ artillery-plugin-statsd@2.2.1
│ ├── debug@3.2.6
│ └─┬ lynx@0.2.0
│ ├── mersenne@0.0.4
│ └── statsd-parser@0.0.4
├── async@1.5.2
├─┬ chalk@1.1.3
│ ├── ansi-styles@2.2.1
│ ├── escape-string-regexp@1.0.5
│ ├─┬ has-ansi@2.0.0
│ │ └── ansi-regex@2.1.1
│ ├── strip-ansi@3.0.1
│ └── supports-color@2.0.0
├─┬ cheerio@1.0.0-rc.2
│ ├─┬ css-select@1.2.0
│ │ ├── boolbase@1.0.0
│ │ ├── css-what@2.1.2
│ │ ├── domutils@1.5.1
│ │ └── nth-check@1.0.2
│ ├─┬ dom-serializer@0.1.0
│ │ └── domelementtype@1.1.3
│ ├── entities@1.1.2
│ ├─┬ htmlparser2@3.10.0
│ │ ├── domelementtype@1.3.1
│ │ ├── domhandler@2.4.2
│ │ ├── inherits@2.0.3
│ │ └─┬ readable-stream@3.1.1
│ │ ├── string_decoder@1.2.0
│ │ └── util-deprecate@1.0.2
│ └─┬ parse5@3.0.3
│ └── @types/node@10.12.21
├─┬ commander@2.9.0
│ └── graceful-readlink@1.0.1
├── csv-parse@4.3.1
├─┬ debug@2.6.9
│ └── ms@2.0.0
├── deep-equal@1.0.1
├─┬ driftless@2.0.3
│ └── present@0.0.3
├── esprima@4.0.1
├── filtrex@0.5.4
├─┬ js-yaml@3.12.1
│ └─┬ argparse@1.0.10
│ └── sprintf-js@1.0.3
├── jsck@0.3.2
├─┬ jsonpath@1.0.0
│ ├── esprima@1.2.2
│ ├─┬ jison@0.4.13
│ │ ├── cjson@0.2.1
│ │ ├── ebnf-parser@0.1.10
│ │ ├─┬ escodegen@0.0.21
│ │ │ ├── esprima@1.0.4
│ │ │ ├── estraverse@0.0.4
│ │ │ └── source-map@0.7.3
│ │ ├── esprima@1.0.4
│ │ ├── jison-lex@0.2.1
│ │ ├── JSONSelect@0.4.0
│ │ ├── lex-parser@0.1.4
│ │ └─┬ nomnom@1.5.2
│ │ ├── colors@0.5.1
│ │ └── underscore@1.1.7
│ ├─┬ static-eval@2.0.0
│ │ └─┬ escodegen@1.11.0
│ │ ├── esprima@3.1.3
│ │ ├── estraverse@4.2.0
│ │ ├── esutils@2.0.2
│ │ ├─┬ optionator@0.8.2
│ │ │ ├── deep-is@0.1.3
│ │ │ ├── fast-levenshtein@2.0.6
│ │ │ ├── levn@0.3.0
│ │ │ ├── prelude-ls@1.1.2
│ │ │ ├── type-check@0.3.2
│ │ │ └── wordwrap@1.0.0
│ │ └── source-map@0.6.1
│ └── underscore@1.7.0
├── lodash@4.17.11
├── moment@2.24.0
├── nanotimer@0.3.15
├─┬ opn@5.4.0
│ └── is-wsl@1.1.0
├─┬ ora@1.4.0
│ ├─┬ chalk@2.4.2
│ │ ├─┬ ansi-styles@3.2.1
│ │ │ └─┬ color-convert@1.9.3
│ │ │ └── color-name@1.1.3
│ │ └─┬ supports-color@5.5.0
│ │ └── has-flag@3.0.0
│ ├─┬ cli-cursor@2.1.0
│ │ └─┬ restore-cursor@2.0.0
│ │ ├─┬ onetime@2.0.1
│ │ │ └── mimic-fn@1.2.0
│ │ └── signal-exit@3.0.2
│ ├── cli-spinners@1.3.1
│ └─┬ log-symbols@2.2.0
│ └─┬ chalk@2.4.2
│ ├── ansi-styles@3.2.1
│ └── supports-color@5.5.0
├── pidusage@1.2.0
├─┬ rc@1.2.8
│ ├── deep-extend@0.6.0
│ ├── ini@1.3.5
│ ├── minimist@1.2.0
│ └── strip-json-comments@2.0.1
├─┬ request@2.88.0
│ ├── aws-sign2@0.7.0
│ ├── aws4@1.8.0
│ ├── caseless@0.12.0
│ ├─┬ combined-stream@1.0.7
│ │ └── delayed-stream@1.0.0
│ ├── extend@3.0.2
│ ├── forever-agent@0.6.1
│ ├─┬ form-data@2.3.3
│ │ └── asynckit@0.4.0
│ ├─┬ har-validator@5.1.3
│ │ ├─┬ ajv@6.8.1
│ │ │ ├── fast-deep-equal@2.0.1
│ │ │ ├── fast-json-stable-stringify@2.0.0
│ │ │ ├── json-schema-traverse@0.4.1
│ │ │ └── uri-js@4.2.2
│ │ └── har-schema@2.0.0
│ ├─┬ http-signature@1.2.0
│ │ ├── assert-plus@1.0.0
│ │ ├─┬ jsprim@1.4.1
│ │ │ ├── extsprintf@1.3.0
│ │ │ ├── json-schema@0.2.3
│ │ │ └─┬ verror@1.10.0
│ │ │ └── core-util-is@1.0.2
│ │ └─┬ sshpk@1.16.1
│ │ ├── asn1@0.2.4
│ │ ├── bcrypt-pbkdf@1.0.2
│ │ ├── dashdash@1.14.1
│ │ ├── ecc-jsbn@0.1.2
│ │ ├── getpass@0.1.7
│ │ ├── jsbn@0.1.1
│ │ ├── safer-buffer@2.1.2
│ │ └── tweetnacl@0.14.5
│ ├── is-typedarray@1.0.0
│ ├── isstream@0.1.2
│ ├── json-stringify-safe@5.0.1
│ ├─┬ mime-types@2.1.21
│ │ └── mime-db@1.37.0
│ ├── oauth-sign@0.9.0
│ ├── performance-now@2.1.0
│ ├── qs@6.5.2
│ ├── safe-buffer@5.1.2
│ ├─┬ tough-cookie@2.4.3
│ │ └── punycode@1.4.1
│ ├── tunnel-agent@0.6.0
│ └── uuid@3.3.2
├─┬ socket.io-client@2.2.0
│ ├── backo2@1.0.2
│ ├── base64-arraybuffer@0.1.5
│ ├── component-bind@1.0.0
│ ├── component-emitter@1.2.1
│ ├─┬ debug@3.1.0
│ │ └── ms@2.0.0
│ ├─┬ engine.io-client@3.3.2
│ │ ├── component-inherit@0.0.3
│ │ ├─┬ debug@3.1.0
│ │ │ └── ms@2.0.0
│ │ ├─┬ engine.io-parser@2.1.3
│ │ │ ├── after@0.8.2
│ │ │ ├── arraybuffer.slice@0.0.7
│ │ │ └── blob@0.0.5
│ │ ├── ws@6.1.3
│ │ ├── xmlhttprequest-ssl@1.5.5
│ │ └── yeast@0.1.2
│ ├─┬ has-binary2@1.0.3
│ │ └── isarray@2.0.1
│ ├── has-cors@1.1.0
│ ├── indexof@0.0.1
│ ├── object-component@0.0.3
│ ├─┬ parseqs@0.0.5
│ │ └─┬ better-assert@1.0.2
│ │ └── callsite@1.0.0
│ ├── parseuri@0.0.5
│ ├─┬ socket.io-parser@3.3.0
│ │ └─┬ debug@3.1.0
│ │ └── ms@2.0.0
│ └── to-array@0.1.4
├── socketio-wildcard@2.0.0
├─┬ stats-lite@2.2.0
│ └── isnumber@1.0.0
├─┬ tmp@0.0.28
│ └── os-tmpdir@1.0.2
├─┬ tough-cookie@2.5.0
│ ├── psl@1.1.31
│ └── punycode@2.1.1
├── traverse@0.6.6
├── try-require@1.2.1
├─┬ update-notifier@2.5.0
│ ├─┬ boxen@1.3.0
│ │ ├── ansi-align@2.0.0
│ │ ├── camelcase@4.1.0
│ │ ├─┬ chalk@2.4.2
│ │ │ ├── ansi-styles@3.2.1
│ │ │ └── supports-color@5.5.0
│ │ ├── cli-boxes@1.0.0
│ │ ├─┬ string-width@2.1.1
│ │ │ ├── is-fullwidth-code-point@2.0.0
│ │ │ └─┬ strip-ansi@4.0.0
│ │ │ └── ansi-regex@3.0.0
│ │ ├─┬ term-size@1.2.0
│ │ │ └─┬ execa@0.7.0
│ │ │ ├─┬ cross-spawn@5.1.0
│ │ │ │ ├─┬ lru-cache@4.1.5
│ │ │ │ │ ├── pseudomap@1.0.2
│ │ │ │ │ └── yallist@2.1.2
│ │ │ │ ├─┬ shebang-command@1.2.0
│ │ │ │ │ └── shebang-regex@1.0.0
│ │ │ │ └─┬ which@1.3.1
│ │ │ │ └── isexe@2.0.0
│ │ │ ├── get-stream@3.0.0
│ │ │ ├── is-stream@1.1.0
│ │ │ ├─┬ npm-run-path@2.0.2
│ │ │ │ └── path-key@2.0.1
│ │ │ ├── p-finally@1.0.0
│ │ │ └── strip-eof@1.0.0
│ │ └── widest-line@2.0.1
│ ├─┬ chalk@2.4.2
│ │ ├── ansi-styles@3.2.1
│ │ └── supports-color@5.5.0
│ ├─┬ configstore@3.1.2
│ │ ├─┬ dot-prop@4.2.0
│ │ │ └── is-obj@1.0.1
│ │ ├── graceful-fs@4.1.15
│ │ ├─┬ make-dir@1.3.0
│ │ │ └── pify@3.0.0
│ │ ├─┬ unique-string@1.0.0
│ │ │ └── crypto-random-string@1.0.0
│ │ └─┬ write-file-atomic@2.4.2
│ │ └── imurmurhash@0.1.4
│ ├── import-lazy@2.1.0
│ ├─┬ is-ci@1.2.1
│ │ └── ci-info@1.6.0
│ ├─┬ is-installed-globally@0.1.0
│ │ ├── global-dirs@0.1.1
│ │ └─┬ is-path-inside@1.0.1
│ │ └── path-is-inside@1.0.2
│ ├── is-npm@1.0.0
│ ├─┬ latest-version@3.1.0
│ │ └─┬ package-json@4.0.1
│ │ ├─┬ got@6.7.1
│ │ │ ├─┬ create-error-class@3.0.2
│ │ │ │ └── capture-stack-trace@1.0.1
│ │ │ ├── duplexer3@0.1.4
│ │ │ ├── is-redirect@1.0.0
│ │ │ ├── is-retry-allowed@1.1.0
│ │ │ ├── lowercase-keys@1.0.1
│ │ │ ├── timed-out@4.0.1
│ │ │ ├── unzip-response@2.0.1
│ │ │ └─┬ url-parse-lax@1.0.0
│ │ │ └── prepend-http@1.0.4
│ │ ├── registry-auth-token@3.3.2
│ │ └── registry-url@3.1.0
│ ├─┬ semver-diff@2.1.0
│ │ └── semver@5.6.0
│ └── xdg-basedir@3.0.0
├── uuid@2.0.3
└─┬ ws@5.2.2
└── async-limiter@1.0.0
And here's the result of running artillery:
[root@ddn-srv wiremock]# artillery run ups-artillery.yml
/usr/lib/node_modules/artillery/node_modules/csv-parse/lib/index.js:19
super({...{readableObjectMode: true}, ...opts})
^^^
SyntaxError: Unexpected token ...
at createScript (vm.js:56:10)
at Object.runInThisContext (vm.js:97:10)
at Module._compile (module.js:549:28)
at Object.Module._extensions..js (module.js:586:10)
at Module.load (module.js:494:32)
at tryModuleLoad (module.js:453:12)
at Function.Module._load (module.js:445:3)
at Module.require (module.js:504:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (/usr/lib/node_modules/artillery/lib/commands/run.js:12:13)
I'd be grateful if you share your comment about the issue.
I just managed to solve the issue by removing both the nojdejs and npm and reinstalling them as explained in this link. Then I installed artilerry again and now it works like a charm.