UiPath Documentation
uipath-cli
latest
false

UiPath CLI user guide

Letzte Aktualisierung 7. Mai 2026

uip tm testcase

uip tm testcase manages test cases within a Test Manager project: create, list, update, delete, link or unlink an Orchestrator automation, and inspect historical results. This page also documents uip tm testcaselog list-assertions, which reads the assertion artifacts attached to a single test case log produced by a run.

A test case is the unit of authorship. It becomes runnable once it is linked to a package entry point with testcase link-automation, and it runs as part of a test set (see testset).

Synopsis

uip tm testcase create --project-key <key> --name <name> [--description <text>] [--version <version>]
uip tm testcase list --project-key <key> [--filter <text>]
uip tm testcase list-result-history --project-key <key> --test-case-id <uuid> [filters…]
uip tm testcase update --project-key <key> --test-case-key <key> [--name <name>] [--description <text>]
uip tm testcase delete --project-key <key> --test-case-key <key>
uip tm testcase link-automation --project-key <key> --test-case-key <key> --folder-key <uuid> --package-name <name> --test-name <name>
uip tm testcase unlink-automation --project-key <key> --test-case-key <key>
uip tm testcase list-automations --project-key <key> --folder-key <uuid> [--package-name <name>]
uip tm testcase list-testsets --project-key <key> --test-case-key <key>

uip tm testcaselog list-assertions --project-key <key> --test-case-log-id <uuid>
uip tm testcase create --project-key <key> --name <name> [--description <text>] [--version <version>]
uip tm testcase list --project-key <key> [--filter <text>]
uip tm testcase list-result-history --project-key <key> --test-case-id <uuid> [filters…]
uip tm testcase update --project-key <key> --test-case-key <key> [--name <name>] [--description <text>]
uip tm testcase delete --project-key <key> --test-case-key <key>
uip tm testcase link-automation --project-key <key> --test-case-key <key> --folder-key <uuid> --package-name <name> --test-name <name>
uip tm testcase unlink-automation --project-key <key> --test-case-key <key>
uip tm testcase list-automations --project-key <key> --folder-key <uuid> [--package-name <name>]
uip tm testcase list-testsets --project-key <key> --test-case-key <key>

uip tm testcaselog list-assertions --project-key <key> --test-case-log-id <uuid>

All verbs honor the global options and the standard exit codes. Every verb accepts -t, --tenant <name> and --log-level <level> (default Information).

uip tm testcase create

Create a new test case inside a project.

Arguments: none.

Options:

  • --project-key <key> (required) — owning project.
  • --name <name> (required) — test case name.
  • --description <text> — free-form description. Defaults to empty.
  • --version <version> — test case version string. Defaults to 1.0.0.

Beispiel:

uip tm testcase create \
  --project-key DEMO \
  --name "Login smoke" \
  --description "Logs in and out"
uip tm testcase create \
  --project-key DEMO \
  --name "Login smoke" \
  --description "Logs in and out"

Data shape:

{
  "Code": "TestCaseCreate",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Id": "a1b2c3d4-0000-0000-0000-000000000001",
    "Name": "Login smoke",
    "Description": "Logs in and out",
    "Version": "1.0.0"
  }
}
{
  "Code": "TestCaseCreate",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Id": "a1b2c3d4-0000-0000-0000-000000000001",
    "Name": "Login smoke",
    "Description": "Logs in and out",
    "Version": "1.0.0"
  }
}

TestCaseKey (the public PROJECT:N identifier) is what you pass to other verbs. The internal Id is only needed for list-result-history.

uip tm testcase list

List all test cases in a project. The CLI pages through results automatically; no paging options are exposed on this verb.

Arguments: none.

Options:

  • --project-key <key> (required) — project to list.
  • --filter <text> — filter by name or key (server-side search).

Beispiel:

uip tm testcase list --project-key DEMO --filter login
uip tm testcase list --project-key DEMO --filter login

Data shape:

{
  "Code": "TestCasesList",
  "Data": [
    {
      "TestCaseKey": "DEMO:1",
      "Name": "Login smoke",
      "Version": "1.0.0",
      "Description": "Logs in and out"
    }
  ]
}
{
  "Code": "TestCasesList",
  "Data": [
    {
      "TestCaseKey": "DEMO:1",
      "Name": "Login smoke",
      "Version": "1.0.0",
      "Description": "Logs in and out"
    }
  ]
}

uip tm testcase list-result-history

List the historical test case logs for a single test case. Takes the internal --test-case-id (UUID), not the PROJECT:N key — look up the UUID via testcase list or from a previous TestCaseCreate output.

Arguments: none.

Options:

  • --project-key <key> (required) — owning project.
  • --test-case-id <uuid> (required) — internal test case UUID.
  • --filter <text> — search test case logs by name.
  • --only-failed — shortcut for "show only failed logs" (default false).
  • --results <results...> — space-separated results to include. Accepted values come from the SDK Result enum.
  • --statuses <statuses...> — space-separated execution statuses. Accepted values come from the SDK TestCaseLogExecutionStatus enum.
  • --duration-period <period> — filter by duration bucket. Accepted values come from the SDK DurationPeriod enum.
  • --top <number> — page size. Defaults to 50.
  • --skip <number> — results to skip. Defaults to 0.
Hinweis:

The exact accepted values for --results, --statuses, and --duration-period are generated at runtime from the Test Manager SDK enums shipped with the installed tool version. Run uip tm testcase list-result-history --help to see the current set.

Beispiel:

uip tm testcase list-result-history \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --only-failed
uip tm testcase list-result-history \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --only-failed

Data shape:

{
  "Code": "TestCaseResultHistory",
  "Data": [
    {
      "Id": "b2c3d4e5-0000-0000-0000-000000000001",
      "Result": "Failed",
      "Status": "Finished",
      "ExecutionEnd": "2025-04-15T12:00:00Z"
    }
  ]
}
{
  "Code": "TestCaseResultHistory",
  "Data": [
    {
      "Id": "b2c3d4e5-0000-0000-0000-000000000001",
      "Result": "Failed",
      "Status": "Finished",
      "ExecutionEnd": "2025-04-15T12:00:00Z"
    }
  ]
}

uip tm testcase update

Rename a test case or change its description. At least one of --name or --description is required; otherwise the command fails with a validation error.

Arguments: none.

Options:

  • --project-key <key> (required) — owning project.
  • --test-case-key <key> (required) — test case key (e.g. DEMO:1).
  • --name <name> — new name.
  • --description <text> — new description.

Beispiel:

uip tm testcase update \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --name "Login smoke (2026)"
uip tm testcase update \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --name "Login smoke (2026)"

Data shape:

{
  "Code": "TestCaseUpdate",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Name": "Login smoke (2026)",
    "Description": "Logs in and out",
    "Result": "Updated"
  }
}
{
  "Code": "TestCaseUpdate",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Name": "Login smoke (2026)",
    "Description": "Logs in and out",
    "Result": "Updated"
  }
}

uip tm testcase delete

Delete a test case by its key.

Arguments: none.

Options:

  • --project-key <key> (required) — owning project.
  • --test-case-key <key> (required) — test case key (e.g. DEMO:1).

Beispiel:

uip tm testcase delete --project-key DEMO --test-case-key DEMO:1
uip tm testcase delete --project-key DEMO --test-case-key DEMO:1

Data shape:

{
  "Code": "TestCaseDelete",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Id": "a1b2c3d4-0000-0000-0000-000000000001",
    "Result": "Deleted"
  }
}
{
  "Code": "TestCaseDelete",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Id": "a1b2c3d4-0000-0000-0000-000000000001",
    "Result": "Deleted"
  }
}

Bind an Orchestrator package entry point to a test case. This is what makes the test case executable inside a test set.

Internally, the command resolves the folder display name from --folder-key, looks up the matching package entry point by name, then stores the binding on the test case. All four of --folder-key, --package-name, and --test-name must resolve to a concrete entry point or the command fails.

Arguments: none.

Options:

  • --project-key <key> (required) — owning project.
  • --test-case-key <key> (required) — test case to bind.
  • --folder-key <uuid> (required) — Orchestrator folder UUID (from uip or folders list).
  • --package-name <name> (required) — Orchestrator package identifier (e.g. InvoiceTests).
  • --test-name <name> (required) — the test case name inside the package (the entry point name).

Beispiel:

uip tm testcase link-automation \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests \
  --test-name SmokeTest
uip tm testcase link-automation \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests \
  --test-name SmokeTest

Data shape:

{
  "Code": "TestCaseLinkAutomation",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "PackageName": "InvoiceTests",
    "PackageSource": "Shared",
    "TestName": "SmokeTest",
    "Result": "Linked"
  }
}
{
  "Code": "TestCaseLinkAutomation",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "PackageName": "InvoiceTests",
    "PackageSource": "Shared",
    "TestName": "SmokeTest",
    "Result": "Linked"
  }
}

PackageSource is the display name of the folder resolved from --folder-key.

Remove the package-entry-point binding from a test case. After unlinking, the test case is no longer executable until it is linked again.

Arguments: none.

Options:

  • --project-key <key> (required) — owning project.
  • --test-case-key <key> (required) — test case to unlink.

Beispiel:

uip tm testcase unlink-automation --project-key DEMO --test-case-key DEMO:1
uip tm testcase unlink-automation --project-key DEMO --test-case-key DEMO:1

Data shape:

{
  "Code": "TestCaseUnlinkAutomation",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Result": "Unlinked"
  }
}
{
  "Code": "TestCaseUnlinkAutomation",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Result": "Unlinked"
  }
}

uip tm testcase list-automations

List the test entry points available in an Orchestrator folder — use this to discover the --package-name / --test-name values to pass to link-automation.

Arguments: none.

Options:

  • --project-key <key> (required) — owning project (used to scope the lookup).
  • --folder-key <uuid> (required) — Orchestrator folder UUID.
  • --package-name <name> — filter the list to one package (case-insensitive exact match).

Beispiel:

uip tm testcase list-automations \
  --project-key DEMO \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001
uip tm testcase list-automations \
  --project-key DEMO \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001

Data shape:

{
  "Code": "TestAutomationsList",
  "Data": [
    {
      "PackageName": "InvoiceTests",
      "TestName": "SmokeTest",
      "PackageVersion": "1.0.2"
    }
  ]
}
{
  "Code": "TestAutomationsList",
  "Data": [
    {
      "PackageName": "InvoiceTests",
      "TestName": "SmokeTest",
      "PackageVersion": "1.0.2"
    }
  ]
}

uip tm testcase list-testsets

List every test set that contains a given test case.

Arguments: none.

Options:

  • --project-key <key> (required) — owning project.
  • --test-case-key <key> (required) — test case key (e.g. DEMO:1).

Beispiel:

uip tm testcase list-testsets --project-key DEMO --test-case-key DEMO:1
uip tm testcase list-testsets --project-key DEMO --test-case-key DEMO:1

Data shape:

{
  "Code": "TestCaseTestSetsList",
  "Data": [
    {
      "TestSetKey": "DEMO:10",
      "Name": "Smoke Suite",
      "FolderKey": "f0f0f0f0-0000-0000-0000-000000000001"
    }
  ]
}
{
  "Code": "TestCaseTestSetsList",
  "Data": [
    {
      "TestSetKey": "DEMO:10",
      "Name": "Smoke Suite",
      "FolderKey": "f0f0f0f0-0000-0000-0000-000000000001"
    }
  ]
}

uip tm testcaselog list-assertions

List the assertions recorded for a single test case log. Every run of a test case produces exactly one test case log; its assertions are the individual checks the automation recorded (Expect, VerifyExpression, etc.). Use this when you want to surface why a test case log is marked Failed.

This verb is registered under testcaselog, not testcase, but it is documented here because it reads assertion artifacts for a test case's log.

Arguments: none.

Options:

  • --test-case-log-id <uuid> (required) — test case log UUID. Get it from uip tm execution list-testcaselogs or uip tm testcase list-result-history.
  • --project-key <key> (required) — owning project.

Beispiel:

uip tm testcaselog list-assertions \
  --test-case-log-id a1b2c3d4-0000-0000-0000-000000000001 \
  --project-key DEMO
uip tm testcaselog list-assertions \
  --test-case-log-id a1b2c3d4-0000-0000-0000-000000000001 \
  --project-key DEMO

Data shape:

{
  "Code": "TestCaseLogAssertions",
  "Data": [
    { "Message": "Title contains 'Welcome'", "Succeeded": true },
    { "Message": "Button 'Login' visible", "Succeeded": false }
  ]
}
{
  "Code": "TestCaseLogAssertions",
  "Data": [
    { "Message": "Title contains 'Welcome'", "Succeeded": true },
    { "Message": "Button 'Login' visible", "Succeeded": false }
  ]
}
  • project — scope that owns every test case.
  • testset — group test cases into a runnable suite.
  • execution — execution-level views of test case logs (execution list-testcaselogs).
  • report — summary of a run, with failed cases and assertion text.

Siehe auch

War diese Seite hilfreich?

Verbinden

Benötigen Sie Hilfe? Support

Möchten Sie lernen? UiPath Academy

Haben Sie Fragen? UiPath-Forum

Auf dem neuesten Stand bleiben