Cameyo's tools for simulating and testing your applications and servers under heavy load.

Cameyo's self-service load-testing service (recommended)

You can simulate load testing for your application using Cameyo's load-testing page and submitting your application's details as shown below.

Cameyo will then start simulating the indicated amount of concurrent sessions. The default app's server will be used, so it's recommended to perform this operation on a dedicated test server group.



Short-lived app sessions

If you want sessions to be short-lived, you can script them to automatically end after a few seconds by using Cameyo scripting: CAMEYO_STARTUP_BEFORE_BAT=echo %1^|timeout 300^|c:\remoteapppilot\remoteapppilot.exe -endsession^


Preparing your application for load-testing

We recommend to load-test your Cameyo application in two separate scenarios:

  • Passive scenario: your application is launched NN times, but no activity is made on it. This allows for minimum / basic resource calculations.
  • Intensive scenario: your application is launched NN times, and heavy (but realistic) user activity is simulated.

Passive load-testing

For this scenario, you simply need to load-test your existing app as shown above. Once all the sessions are concurrently running on your server, proceed with quality assessment as explained below.

Intensive load-testing

This scenario requires some automation of your software. The idea is to simulate repetitive or infinite user interaction with your software. This can either be done via command-line scripting (if your software supports such command-lines) or by using UI automation tools such as AutoIt.

Once all the sessions are concurrently running on your server, proceed with quality assessment as explained below.

Quality assessment

For each of the above scenarios, you can assess the results by doing the following:

  • Resource assessment: connect to the tested server as an admin while all load-testing sessions are running. Open the Task Manager and write down the CPU and memory resource usage in the Performance tab. You can also note the breakdown per session via the Users tab. This gives you an indication of how much of your server's resources are taken by the tested number of concurrent sessions.
  • Look & feel assessment: while subjective, this indicator is possibly the most important one. Here you will need to assess what the user experience feels like in cases of heavy load. To do this, manually start a Cameyo session of your tested app while the server is under load and use your software as a normal user would. If it behaves fast, try adding more sessions. You can add additional sessions by repeating the above URL -- no need to stop the running sessions. If it feels too laggy, you should reduce the number of sessions -- you can do this via the Task Manager | Users | Disconnect action. Do this until you find the right capacity/quality threshold.


Scripting your own load-testing batch file

You can launch several sessions of Chrome by enabling Unauthenticated access for your Cameyo app, and creating the following batch file:


LoadTest.bat:

@ECHO OFF
SET PROFILE_DIR=%TEMP%\LoadTestProfiles\%RANDOM%
rd %PROFILE_DIR% /S /Q
md %PROFILE_DIR%
FOR /L %%G IN (1,1,20) DO (
  start "Browser" "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --user-data-dir=%PROFILE_DIR%\%%G --no-first-run --disable-background-timer-throttling --disable-gpu "https://online.cameyo.com/apps/123456/play"
)
timeout 600
taskkill /f /im chrome.exe

Change the highlighted parts with, respectively:

  • 20 -> the number of sessions to launch
  • C:\Program Files\... -> your path to chrome.exe
  • 123456 -> app ID of the application you'd like to stress-test