Docs

Device Replacement Settings

Sometimes a device assigned to a running job stops working mid-run — it fails to prepare, gets manually released, or disconnects. Two settings control what RobusTest does when that happens:

  • addMoreDevices — should RobusTest try to replace the lost device?
  • limitToMaxDevice — if it does replace it, should the job stay under its device limit?

This page walks through what each one does, using a simple example.


The example

Say your job is set up with:

  • maxDeviceCount: 5 — run on up to 5 devices (set on the device query, see Device Queries)
  • The job starts, picks up 5 devices, and begins running.
  • Partway through, 1 device disconnects.

What happens next depends on your two settings.


Rule #1: The job never starts with more than maxDeviceCount

This part is always true, no matter how the other two settings are configured. If maxDeviceCount is 5, the job starts with at most 5 devices — never more. Neither addMoreDevices nor limitToMaxDevice can change that. They only come into play after the job has already started.

(minDeviceCount, by contrast, is just the minimum needed to start the job at all — not a target it tries to reach.)


Rule #2: addMoreDevices decides whether the lost device gets replaced

Setting What happens when a device drops out
addMoreDevices: true RobusTest looks for a free device and adds it to the job, so it's back to running on close to its original device count.
addMoreDevices: false Nothing happens. The job keeps running on the devices it has left — in our example, 4 instead of 5.

Rule #3: limitToMaxDevice decides whether replacements can go over the limit

This setting only matters when addMoreDevices is true — if replacements are turned off, there's nothing for it to limit.

Setting What happens when RobusTest adds a replacement
limitToMaxDevice: true RobusTest checks the job's current device count first, and only adds a replacement if doing so won't go over maxDeviceCount. In our example, it tops back up to 5, never more.
limitToMaxDevice: false RobusTest adds the replacement without checking the current count. Usually this still lands you back at 5 — but if devices keep dropping out and getting replaced over a long job, the total used over time can end up higher than 5.

Putting it together

addMoreDevices limitToMaxDevice Result
true true Recommended. Lost devices get replaced, and the job never runs on more than maxDeviceCount at once.
true false Lost devices get replaced, but without a safety check — over a long job with repeated drop-outs, the running count can creep past maxDeviceCount.
false (doesn't matter) Lost devices are never replaced. The job just runs on fewer devices for the rest of its run.

Easy mistake to avoid: turning both settings off does not mean "no limits, just grab whatever's free." The job still never starts with more than maxDeviceCount — that part is fixed. Turning both off only means RobusTest won't try to replace a device once it's lost.


Where to set these

  • addMoreDevices is a Run Settings option — set it in your Run Settings profile under Job → Device Management. See Run Settings § 2c. Device Management.
  • limitToMaxDevice is set in the job payload itself, next to deviceQueries — not in Run Settings. See Job Payload API for the exact JSON.