This tool is designed to help you stress test your BigBlueButton server, ensuring it can handle the load of numerous simultaneous users.
This tool simulates client activity in a BigBlueButton (BBB) conference using Puppeteer, making it easy to test the performance and scalability of your BBB server. 💻
-
Clone this repository 📂
git clone https://github.com/nilsmodel/bbb-stress-test.git cd bbb-stress-test
-
Run
make bootstrap
⚙️make bootstrap
-
Update the generated
.env
file 🛠️
SpecifyBBB_URL
andBBB_SECRET
.
You can get these values by runningbbb-conf --secret
on your BBB server.
-
Manually start a meeting on your BBB server. 📅
-
Get the meeting ID by running:
make list-meetings
-
Update your
.env
file to set the following variables:BBB_MEETING_ID
: the meeting IDBBB_CLIENTS_LISTEN_ONLY
: the number of simultaneous clients to connect in "Listen only" modeBBB_CLIENTS_MIC
: the number of simultaneous clients to connect with an active microphoneBBB_CLIENTS_WEBCAM
: the number of simultaneous clients to connect with an active webcam and microphoneBBB_TEST_DURATION
: the duration of the test in seconds
-
Run
make stress
to launch the test suite:make stress
This tool is compatible with the following versions of BigBlueButton:
Version | Compatibility |
---|---|
v3.0.0-alpha.6 | ✅ |
- Implement a Web-GUI for configuration, test launch and reporting
- Implement reporting features, metrics and extend logging capabilities
- Update and resolve dependencies
- Revise the client simulation process with Puppeteer
- Add support for more complex user interaction scenarios
- Enhance documentation with examples and common use cases
- Create automated tests for the stress tool
- Optimize the performance for large-scale tests
- Integrate with CI/CD pipelines for automated testing
- Implement multi-language support
We welcome contributions! If you'd like to contribute, please fork the repository and use a feature branch. Pull requests are warmly welcome. This project is a fork of openfun/bbb-stress-test.
This work is released under the MIT License (see LICENSE).
This project and repo is proudly supported & maintained for you by Laterna.Tech 🚀