A rudimentary utility for defining and running concurrent testsuite tests is available for execution in the Robot container.
The following is an example of the JSON definition of a loadtest that may be input into the utility.
The meaning of this is
- Run the profile for "duration" (300 seconds or 5 minutes)
- A single iteration over profile is "cyclelength" (150 seconds). cyclelength >= the accumulated profile time.
- Wait 0 seconds and initiate "health" test
- Wait 5 seconds and initate "health" test
- Wait 10 seconds and initiate a "distribution" and a "health" test
- Wait until end of cyclelength and start again until duration expires.
Invoking Load Test via runSoak.sh
- Upload profile file to robot VM /opt/eteshare to make it available to the Robot docker container in /share
- Connect to docker container
docker exec -it openecompete_container bash
- cd to Robot home folder
- Run the runSoak.sh against the uploaded file (Note that duration and cyclelength may be overridden on the command line.)
|./runSoak.sh -p /share/loadtest.json|
- Output is redirected to /share/logs/soak_<pid>.log or /opt/etehsare/logs/soak_<pid>.log so these can be tailed for progress.
Robot logs are written to subfolder /share/logs/soak_<pid> or /opt/etehsare/logs/soak_<pid>