- Overview
- Get started
- Concepts
- Using UiPath CLI
- How-to guides
- CI/CD recipes
- Command reference
- Overview
- Exit codes
- Global options
- uip codedagent
- uip coder
- uip context-grounding
- uip docsai
- uip function
- uip guardrails
- uip llm-configuration
- uip llm-gateway
- uip maestro authoring
- uip maestro registry
- uip model-hub
- activities find
- activities get-default-xaml
- analyze
- analyzer-rules list
- build
- cleanup
- data-fabric-entities install
- data-fabric-entities list
- files diff
- get-library-object-repository
- get-object-repository
- init
- instances list
- pack
- packages inspect
- packages install
- packages versions
- publish
- remote
- restore
- run, debug & execution
- settings
- studio start
- templates search
- test-data add-entity
- test-data add-queue
- test-data add-variation
- tm
- uia
- validate
- workflow-examples get
- workflow-examples list
- uip tasks
- uip traces
- uip traces feedback
- Migration
- Reference & support
uip tm perf-scenario load-groups
Syntax and options for `uip tm perf-scenario load-groups`, which binds test cases to a performance scenario, tunes their load profile, and reads the load groups of an execution.
uip tm perf-scenario load-groups manages the load groups bound to a performance scenario. A load group is one test case bound to a scenario with a load profile — virtual users, ramp-up/peak/ramp-down timing, SLO thresholds, and robot type. add, update, and remove change the scenario's load groups; list and get read the load groups of one execution.
This page is part of the uip tm perf-scenario command group — see that page for scenario lifecycle verbs (create, get, list, delete, execute, stop, list-dry-run-reports) and shared concepts.
Synopsis
uip tm perf-scenario load-groups add --scenario-key <key> (--test-case-key <key> | --test-case-id <uuid>) --folder-key <uuid> --package-name <name> [--package-version <version>] [--virtual-users <n>] [--ramp-up-minutes <n>] [--peak-minutes <n>] [--ramp-down-minutes <n>] [--delay-minutes <n>] [--max-response-time-ms <ms>] [--max-error-rate <rate>] [--robot-type <type>]
uip tm perf-scenario load-groups update --load-group-id <uuid> (--project-id <id> | --project-key <key>) [--virtual-users <n>] [--ramp-up-minutes <n>] [--peak-minutes <n>] [--ramp-down-minutes <n>] [--delay-minutes <n>] [--max-response-time-ms <ms>] [--max-error-rate <rate>] [--multiplexing-factor <n>] [--robot-type <type>] [--enabled <bool>]
uip tm perf-scenario load-groups remove --load-group-id <uuid> (--project-id <id> | --project-key <key>)
uip tm perf-scenario load-groups list (--project-id <id> | --project-key <key>) --execution-id <uuid> [--query <expr>]
uip tm perf-scenario load-groups get (--project-id <id> | --project-key <key>) --load-group-id <uuid>
uip tm perf-scenario load-groups add --scenario-key <key> (--test-case-key <key> | --test-case-id <uuid>) --folder-key <uuid> --package-name <name> [--package-version <version>] [--virtual-users <n>] [--ramp-up-minutes <n>] [--peak-minutes <n>] [--ramp-down-minutes <n>] [--delay-minutes <n>] [--max-response-time-ms <ms>] [--max-error-rate <rate>] [--robot-type <type>]
uip tm perf-scenario load-groups update --load-group-id <uuid> (--project-id <id> | --project-key <key>) [--virtual-users <n>] [--ramp-up-minutes <n>] [--peak-minutes <n>] [--ramp-down-minutes <n>] [--delay-minutes <n>] [--max-response-time-ms <ms>] [--max-error-rate <rate>] [--multiplexing-factor <n>] [--robot-type <type>] [--enabled <bool>]
uip tm perf-scenario load-groups remove --load-group-id <uuid> (--project-id <id> | --project-key <key>)
uip tm perf-scenario load-groups list (--project-id <id> | --project-key <key>) --execution-id <uuid> [--query <expr>]
uip tm perf-scenario load-groups get (--project-id <id> | --project-key <key>) --load-group-id <uuid>
All verbs honor the global options and the standard exit codes. Every verb accepts --log-level <level> (default Information).
The project comes from one of two places:
addtakes no project option. The project is derived from the prefix of--scenario-key(for example,SP1:7→ projectSP1).update,remove,list, andgetidentify their target by a bare UUID, so they take--project-idor--project-key. When you pass both,--project-idwins. If you pass neither, the command fails withErrorCode: invalid_argument.
Two different load group ids appear on this page:
| Id | Where it comes from | Taken by |
|---|---|---|
| Scenario load group id | LoadGroupId from perf-scenario get or add | update, remove |
| Load group execution id | Id from list | get, and --load-group-id on the Execution data verbs |
uip tm perf-scenario load-groups add
Bind a test case to a scenario as a new load group. Sets dry-run defaults for the load profile — dial them in later with update once a dry run passes.
Arguments
None.
Options
| Flag | Description |
|---|---|
--scenario-key <key> | Required. Scenario object key (for example, SP1:7). The project is derived from the prefix. |
--test-case-key <key> | Test case object key to bind (for example, SP1:602). Resolved to its UUID via the API. Provide this or --test-case-id. |
--test-case-id <uuid> | Test case UUID to bind directly, skipping the key lookup. Provide this or --test-case-key. |
--folder-key <uuid> | Required. Orchestrator folder key (must be a GUID). |
--package-name <name> | Required. Orchestrator package name containing the automation. |
--package-version <version> | Orchestrator package version. Defaults to the latest published version for the package when omitted (resolved via an Orchestrator lookup). |
--virtual-users <n> | Virtual user count. Defaults to 1. |
--ramp-up-minutes <n> | Ramp-up duration in minutes. Defaults to 0. |
--peak-minutes <n> | Peak duration in minutes. Defaults to 1. |
--ramp-down-minutes <n> | Ramp-down duration in minutes. Defaults to 0. |
--delay-minutes <n> | Delay before start, in minutes. Defaults to 0. |
--max-response-time-ms <ms> | Max response time SLO in ms; the server requires at least 100. Defaults to 100. |
--max-error-rate <rate> | Max error rate SLO (fraction, for example 0.01 for 1%); the server requires at least 0.0001. Defaults to 0.0001. |
--robot-type <type> | Robot type: standard, template, elasticRobotPool, cloudRobotVm, serverless. Defaults to standard. |
Examples
# bind by test case key
uip tm perf-scenario load-groups add \
--scenario-key SP1:7 \
--test-case-key SP1:602 \
--folder-key 94821c49-ab85-49cb-94e1-f82c6d8973be \
--package-name Checkout_Tests \
--robot-type serverless
# bind by test case key
uip tm perf-scenario load-groups add \
--scenario-key SP1:7 \
--test-case-key SP1:602 \
--folder-key 94821c49-ab85-49cb-94e1-f82c6d8973be \
--package-name Checkout_Tests \
--robot-type serverless
# bind by test case id directly (skips the key lookup)
uip tm perf-scenario load-groups add \
--scenario-key SP1:7 \
--test-case-id f0b7f77f-482b-0400-a9c4-0b49497eb136 \
--folder-key 94821c49-ab85-49cb-94e1-f82c6d8973be \
--package-name Checkout_Tests \
--package-version 1.0.2
# bind by test case id directly (skips the key lookup)
uip tm perf-scenario load-groups add \
--scenario-key SP1:7 \
--test-case-id f0b7f77f-482b-0400-a9c4-0b49497eb136 \
--folder-key 94821c49-ab85-49cb-94e1-f82c6d8973be \
--package-name Checkout_Tests \
--package-version 1.0.2
Data shape
{
"Code": "LoadGroupAdd",
"Data": {
"ScenarioKey": "SP1:7",
"TestCaseKey": "SP1:602",
"LoadGroupId": "8e322581-0a25-0000-738b-0b49fd936ca1",
"PackageName": "Checkout_Tests",
"PackageVersion": "1.0.2",
"VirtualUsers": 1,
"Result": "Added"
}
}
{
"Code": "LoadGroupAdd",
"Data": {
"ScenarioKey": "SP1:7",
"TestCaseKey": "SP1:602",
"LoadGroupId": "8e322581-0a25-0000-738b-0b49fd936ca1",
"PackageName": "Checkout_Tests",
"PackageVersion": "1.0.2",
"VirtualUsers": 1,
"Result": "Added"
}
}
uip tm perf-scenario load-groups update
Update one load group's load profile in place (virtual users, ramp/peak/ramp-down minutes, SLO thresholds, robot type, enabled state). Only the flags you pass change — everything else is preserved. Use this between a passing dry run and a full performanceTesting run to dial in the real load profile.
Arguments
None.
Options
| Flag | Description |
|---|---|
--load-group-id <uuid> | Required. The scenario's load group UUID (the LoadGroupId field from perf-scenario get or add above — not the per-execution id from list below). |
--project-id <id> | Test Manager project ID. Wins if --project-key is also given. |
--project-key <key> | Test Manager project key (for example, SP1). Ignored if --project-id is also given. |
--virtual-users <n> | New virtual user count. |
--ramp-up-minutes <n> | New ramp-up duration in minutes. |
--peak-minutes <n> | New peak duration in minutes. |
--ramp-down-minutes <n> | New ramp-down duration in minutes. |
--delay-minutes <n> | New delay before start, in minutes. |
--max-response-time-ms <ms> | New max response time SLO in ms (server requires at least 100). |
--max-error-rate <rate> | New max error rate SLO (server requires at least 0.0001). |
--multiplexing-factor <n> | Multiplexing factor — the recommended value is emitted at the end of a dry run (list-dry-run-reports → RecommendedMultiplexingFactor). |
--robot-type <type> | New robot type: standard, template, elasticRobotPool, cloudRobotVm, serverless. |
--enabled <bool> | Enable (true) or disable (false) this load group. |
Example
uip tm perf-scenario load-groups update \
--load-group-id 8e322581-0a25-0000-738b-0b49fd936ca1 \
--project-key SP1 \
--virtual-users 50 \
--ramp-up-minutes 2 \
--peak-minutes 10
uip tm perf-scenario load-groups update \
--load-group-id 8e322581-0a25-0000-738b-0b49fd936ca1 \
--project-key SP1 \
--virtual-users 50 \
--ramp-up-minutes 2 \
--peak-minutes 10
Data shape
{
"Code": "LoadGroupUpdate",
"Data": {
"LoadGroupId": "8e322581-0a25-0000-738b-0b49fd936ca1",
"VirtualUsers": 50,
"RampUpMinutes": 2,
"PeakMinutes": 10,
"RampDownMinutes": 0,
"DelayMinutes": 0,
"MaxResponseTimeMs": 100,
"MaxErrorRate": 0.0001,
"MultiplexingFactor": null,
"Enabled": true,
"RobotType": "standard",
"Result": "Updated"
}
}
{
"Code": "LoadGroupUpdate",
"Data": {
"LoadGroupId": "8e322581-0a25-0000-738b-0b49fd936ca1",
"VirtualUsers": 50,
"RampUpMinutes": 2,
"PeakMinutes": 10,
"RampDownMinutes": 0,
"DelayMinutes": 0,
"MaxResponseTimeMs": 100,
"MaxErrorRate": 0.0001,
"MultiplexingFactor": null,
"Enabled": true,
"RobotType": "standard",
"Result": "Updated"
}
}
Fields you didn't pass are echoed back at their current (unchanged) value, not omitted — the response reflects the full merged load group, not only the delta.
uip tm perf-scenario load-groups remove
Remove a load group from a scenario. Detaches the test case and its load profile; the test case itself and any past execution data are left untouched.
Arguments
None.
Options
| Flag | Description |
|---|---|
--load-group-id <uuid> | Required. The scenario's load group UUID (the LoadGroupId field from perf-scenario get or add above — not the per-execution id from list below). |
--project-id <id> | Test Manager project ID. Wins if --project-key is also given. |
--project-key <key> | Test Manager project key (for example, SP1). Ignored if --project-id is also given. |
Example
uip tm perf-scenario load-groups remove \
--load-group-id 8e322581-0a25-0000-738b-0b49fd936ca1 \
--project-key SP1
uip tm perf-scenario load-groups remove \
--load-group-id 8e322581-0a25-0000-738b-0b49fd936ca1 \
--project-key SP1
Data shape
{
"Code": "LoadGroupRemove",
"Data": {
"LoadGroupId": "8e322581-0a25-0000-738b-0b49fd936ca1",
"Result": "Removed"
}
}
{
"Code": "LoadGroupRemove",
"Data": {
"LoadGroupId": "8e322581-0a25-0000-738b-0b49fd936ca1",
"Result": "Removed"
}
}
This is a hard removal with no confirmation flag — the CLI does not gate it behind -y/--yes.
uip tm perf-scenario load-groups list
List the load groups of one execution (test case, SUT, virtual users, thresholds, status). This is different from the scenario's own load-group list: use perf-scenario get to see the load groups configured on the scenario itself.
Arguments
None.
Options
| Flag | Description |
|---|---|
--project-id <id> | Test Manager project ID. Wins if --project-key is also given. |
--project-key <key> | Test Manager project key (for example, DEMO). Ignored if --project-id is also given. |
--execution-id <uuid> | Required. Scenario execution id (the ExecutionId from perf-scenario execute). |
--query <expr> | jq-style filter applied to the output data. |
Example
uip tm perf-scenario load-groups list \
--project-key DEMO \
--execution-id 80694766-5a44-0000-0985-0b49fd93832d
uip tm perf-scenario load-groups list \
--project-key DEMO \
--execution-id 80694766-5a44-0000-0985-0b49fd93832d
Data shape
{
"Code": "PerfLoadGroupsList",
"Data": [
{
"Id": "082486b0-8d51-0000-b54a-0b4a1388f850",
"ScenarioExecutionId": "80694766-5a44-0000-0985-0b49fd93832d",
"LoadGroupId": "8e322581-0a25-0000-738b-0b49fd936ca1",
"Name": "Checkout flow",
"Status": "Passed",
"VirtualUsers": 20,
"MaximumResponseTimeMilliseconds": 100,
"MaximumErrorRate": 0.0001
}
]
}
{
"Code": "PerfLoadGroupsList",
"Data": [
{
"Id": "082486b0-8d51-0000-b54a-0b4a1388f850",
"ScenarioExecutionId": "80694766-5a44-0000-0985-0b49fd93832d",
"LoadGroupId": "8e322581-0a25-0000-738b-0b49fd936ca1",
"Name": "Checkout flow",
"Status": "Passed",
"VirtualUsers": 20,
"MaximumResponseTimeMilliseconds": 100,
"MaximumErrorRate": 0.0001
}
]
}
Data is an array of the service's load group execution records with PascalCase keys, so the exact field set can be richer than shown here (test case, package, timing, and the full load profile) — inspect a real response or use --query to shape it. The Id field here is the per-execution load group id that get and the Execution data verbs expect as --load-group-id. LoadGroupId links the row back to the scenario's load group.
uip tm perf-scenario load-groups get
Get one load group of an execution: its result (Status, plus OriginalStatus when the result was overridden), its test case, and the load profile it ran with. Takes the load group execution id from list, not the scenario's load group id that update and remove take.
Arguments
None.
Options
| Flag | Description |
|---|---|
--project-id <id> | Test Manager project ID. Wins if --project-key is also given. |
--project-key <key> | Test Manager project key (for example, DEMO). Ignored if --project-id is also given. |
--load-group-id <uuid> | Required. Load group execution id (the Id from load-groups list). |
Example
uip tm perf-scenario load-groups get \
--project-key DEMO \
--load-group-id 082486b0-8d51-0000-b54a-0b4a1388f850
uip tm perf-scenario load-groups get \
--project-key DEMO \
--load-group-id 082486b0-8d51-0000-b54a-0b4a1388f850
Data shape
{
"Code": "PerfLoadGroupGet",
"Data": {
"Id": "082486b0-8d51-0000-b54a-0b4a1388f850",
"ScenarioExecutionId": "80694766-5a44-0000-0985-0b49fd93832d",
"LoadGroupId": "8e322581-0a25-0000-738b-0b49fd936ca1",
"TestCase": {
"Id": "f0b7f77f-482b-0400-a9c4-0b49497eb136",
"ObjKey": "SP1:602",
"Name": "Checkout flow"
},
"Name": "Checkout flow",
"Status": "Failed",
"OriginalStatus": "Passed",
"PackageName": "Checkout_Tests",
"Version": "1.0.2",
"VirtualUsers": 20,
"RampUpTimeMinutes": 2,
"PeakTimeMinutes": 10,
"RampDownTimeMinutes": 0,
"DelayMinutes": 0,
"MaximumResponseTimeMilliseconds": 100,
"MaximumErrorRate": 0.0001,
"MultiplexingFactor": 3,
"Enabled": true
}
}
{
"Code": "PerfLoadGroupGet",
"Data": {
"Id": "082486b0-8d51-0000-b54a-0b4a1388f850",
"ScenarioExecutionId": "80694766-5a44-0000-0985-0b49fd93832d",
"LoadGroupId": "8e322581-0a25-0000-738b-0b49fd936ca1",
"TestCase": {
"Id": "f0b7f77f-482b-0400-a9c4-0b49497eb136",
"ObjKey": "SP1:602",
"Name": "Checkout flow"
},
"Name": "Checkout flow",
"Status": "Failed",
"OriginalStatus": "Passed",
"PackageName": "Checkout_Tests",
"Version": "1.0.2",
"VirtualUsers": 20,
"RampUpTimeMinutes": 2,
"PeakTimeMinutes": 10,
"RampDownTimeMinutes": 0,
"DelayMinutes": 0,
"MaximumResponseTimeMilliseconds": 100,
"MaximumErrorRate": 0.0001,
"MultiplexingFactor": 3,
"Enabled": true
}
}
Data is the service's load group execution record with keys converted to PascalCase; the record can carry more fields than shown here. When the result was overridden, Status holds the overridden result and OriginalStatus the original one.
Related
- uip tm perf-scenario — scenario lifecycle and shared concepts.
- Execution data — inspect a finished or in-progress execution.
- Reports — render authored reports for an execution or a comparison.
- testcases —
link-automationis what gives a test case theautomationIdthataddandperf-scenario list-dry-run-reportsdepend on. - uip or folders list — source of the
--folder-keyused byadd.
See also
- Synopsis
- uip tm perf-scenario load-groups add
- Arguments
- Options
- Examples
- Data shape
- uip tm perf-scenario load-groups update
- Arguments
- Options
- Example
- Data shape
- uip tm perf-scenario load-groups remove
- Arguments
- Options
- Example
- Data shape
- uip tm perf-scenario load-groups list
- Arguments
- Options
- Example
- Data shape
- uip tm perf-scenario load-groups get
- Arguments
- Options
- Example
- Data shape
- Related
- See also