Load test with theia

We are trying to write a load test for our system where there are many pods with theia containers inside.
We use Gatling and without the browser part it is hard to send the correct requests over the websocket in order to make all the LSPs operational.
Did someone try to automate theia start without browser? Is there other recommended approach for load tests?

[original thread by amiramw]

Maybe headless chrome with puppeteer? plus something like our integration tests to enable LSPs?


that’s what i thought. I wonder if headless chrome won’t be heavy when simulating many clients in parallel.

I’ve never tried, maybe google if someone tried so.

How many do you want?

here there is something: https://github.com/puppeteer/puppeteer/issues/5142


Hi. I’m a performance engineer and working with @amiramw in the same organization.
As mentioned by @amiramw, we are trying to simulate hundreds of users behavior using a load tool called Gatling.
Gatling knows to operate with web sockets (e.g. open a connection, open channel , send request, receive and check the response). So we know to simulate theia end user behavior, but only partially.
We are missing loading of “/usr/local/bin/node /theia/node_modules/@theia/core/lib/node/messaging/ipc-bootstrap.js” process in theia container.
Do you probably know how to load it?

It is used for fs watching and git repository detection.