This tool simulates real attendees by launching Amazon Chime SDK for Javascript (Amazon Chime SDK for JS) clients and enabling them to join meetings and control the features of the meeting. The tool can be helpful if you wish to:
- simulate attendees in a meeting
- test multiple scenarios to see how the app built on Amazon Chime SDK for JS behaves for larger loads
- Download the package from this repository to your local machine
- In the package, run
yarn install
to install all the necessary packages - Update the client url link with the builder created app link (in configs/Constants.js)
- Update the constants with the names used in the builder created app. The ones that have been set now are with respect to the Amazon Chime for JS demo app.
Run the launcher using node ClientLauncher.js
in the src directory
Optional parameters:
Parameter | Meaning | Default Value |
threadsCount | Defines the number of threads to be spawned per Amazon EC2 instance for launching the clients. A number smaller than the instance core size will simulate scenarios of a machine running multiple applications in the background. Note: A higher number than the instance core size is not recommended in this scenario. | An integer, equal to the virtual CPU count of the EC2 instance. |
attendeesPerMeeting | Defines the number of attendees to be spawned per Amazon EC2 instance running against a meeting name. | 10 |
loadTestSessionName | Defines the meetingName when launching the clients. on the Session name assigned to the load test. | "MeetingLoadTest" |
attendeeNamePrefix | Defines the fixed prefix name for all attendees in a meeting. Attendee names in the client appear with the prefix followed by a number. | "Attendee" |
localMachine | Use this parameter if running the load test from the local machine. | false |
Usage:
node ClientLauncher.js --attendeesPerMeeting 10
At the root level, the package consists of 4 different directory, the Client Launcher invoker file ClientLauncher.js and the Cleanup.js.
- scripts/: The files in this directory are helper files which has to be executed from the local Mac/PC or dev desktop
- src/: The directory consists of the Activity files that the ClientLauncher is dependent on
- configs/ : Consists of account information and the LoadTest Status
- CDK/ : This consists of the infra setup code, needed for running the load test which can be modified before each test based on the requirements of the number of EC2 instances needed to be deployed in an account.
Using the --localMachine as an optional parameter will let the user run the tool in the local machine. Recommend not to run more than 10 attendees on the local Mac/Windows machines which has less than 10 cores.