UiPath Documentation
uipath-cli
latest
false
UiPath-CLI-Benutzerhandbuch
Wichtig :
Dieser Inhalt wurde maschinell übersetzt. Es kann 1–2 Wochen dauern, bis die Lokalisierung neu veröffentlichter Inhalte verfügbar ist.

uip-tm-Testfälle ab

Syntax und Optionen für „uip tm testcases“, das Testfälle verwaltet, einschließlich Erstellen, Auflisten, Aktualisieren, Löschen, Verknüpfen von Automatisierungen und Testfallprotokollverwaltung.

uip tm testcases manages test cases within a Test Manager project: create, list, update, delete, link or unlink an Orchestrator automation, inspect historical results, and add or remove test cases from a test set. It also provides testcases run — a way to execute one or more test cases directly from an Orchestrator package. This page also documents uip tm testcaselog list-assertions, testcaselog start, and testcaselog finish (registered under testcaselog, singular), which read assertion artifacts and record manual log entries for a test case log.

Ein Testfall ist die Einheit der Autorisierung. Es wird ausführbar, sobald es mit einem Paketeinstiegspunkt mit testcases link-automation verknüpft ist. Ein Testfall kann dann als Teil eines Testsatzes (siehe Testsätze) oder direkt über testcases run ausgeführt werden.

Warnung:

Führen Sie testcases link-automation niemals für einen Testfall aus, der von uip tm pack für ein Playwright-Projekt erstellt wurde. Playwork-Testfälle werden während der Packzeit-Erfassung automatisch verknüpft; Wenn Sie link-automation manuell darauf ausführen, folgt sie stattdessen der RPA-Verknüpfungspipeline und beschädigt diese Zuordnung. Wenn Sie --no-create-test-cases haben, verwenden Sie stattdessen den Flow „Automatisierung auswählen“ in der Test Manager-Benutzeroberfläche.

Zusammenfassung

uip tm testcases create --project-key <key> --name <name> [--description <text>] [--version <version>]
uip tm testcases list --project-key <key> [--filter <text>]
uip tm testcases list-result-history --project-key <key> --test-case-id <uuid> [--filter <text>] [--only-failed] [--results <results...>] [--statuses <statuses...>] [--duration-period <period>] [--top <number>] [--skip <number>]
uip tm testcases update --project-key <key> --test-case-key <key> [--name <name>] [--description <text>] [--pre-condition <text>] [--post-condition <text>]
uip tm testcases delete --project-key <key> --test-case-key <key> [-y]
uip tm testcases link-automation --project-key <key> --test-case-key <key> --folder-key <uuid> --package-name <name> --test-name <name>
uip tm testcases link-package --project-key <key> --folder-key <uuid> [--package-name <name>] [--test-name <name...>] [--dry-run]
uip tm testcases unlink-automation --project-key <key> --test-case-key <key>
uip tm testcases list-automations --project-key <key> [--folder-key <uuid>] [--package-name <name>]
uip tm testcases list-testsets --project-key <key> --test-case-key <key>
uip tm testcases run --project-key <key> --test-case-id <uuid...> --name <name> --execution-type <type> [--async] [--folder-key <uuid>] [--runtime-type <type>] [--robot-user-key <uuid>] [--machine-key <uuid>] [--host-machine-name <name>] [--service-user-name <name>] [--test-set-packages <json>]
uip tm testcases add --test-set-key <key> (--test-case-keys <keys...> | --labels <labels...> [--limit <count>])
uip tm testcases remove --test-set-key <key> --test-case-keys <keys> [-y]
uip tm testcases list-steps --project-key <key> --test-case-id <uuid>

uip tm testcases steps list --project-key <key> --test-case-id <uuid>
uip tm testcases steps get --project-key <key> --step-id <uuid>
uip tm testcases steps add --project-key <key> --test-case-id <uuid> [--description <text>] [--expected-result <text>] [--action-type <type>] [--clipboard-data <text>] [--order-no <n>] [--step <json>...]
uip tm testcases steps update --project-key <key> --step-id <uuid> [--description <text>] [--expected-result <text>] [--action-type <type>] [--clipboard-data <text>]
uip tm testcases steps move --project-key <key> --step-id <uuid> --target-position <n>
uip tm testcases steps delete --project-key <key> --step-id <uuid> [-y]

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

uip tm testcaselog start --project-key <key> --execution-id <uuid> --test-case-id <uuid> [--run-id <number>]
uip tm testcaselog finish --project-key <key> --execution-id <uuid> --test-case-id <uuid> --result <result> --has-error <boolean> --executed-by <email> [--detail-link <url>] [--run-id <number>] [--is-post-condition-met <boolean>] (--step-logs <json> | --step-logs-file <path>)
uip tm testcases create --project-key <key> --name <name> [--description <text>] [--version <version>]
uip tm testcases list --project-key <key> [--filter <text>]
uip tm testcases list-result-history --project-key <key> --test-case-id <uuid> [--filter <text>] [--only-failed] [--results <results...>] [--statuses <statuses...>] [--duration-period <period>] [--top <number>] [--skip <number>]
uip tm testcases update --project-key <key> --test-case-key <key> [--name <name>] [--description <text>] [--pre-condition <text>] [--post-condition <text>]
uip tm testcases delete --project-key <key> --test-case-key <key> [-y]
uip tm testcases link-automation --project-key <key> --test-case-key <key> --folder-key <uuid> --package-name <name> --test-name <name>
uip tm testcases link-package --project-key <key> --folder-key <uuid> [--package-name <name>] [--test-name <name...>] [--dry-run]
uip tm testcases unlink-automation --project-key <key> --test-case-key <key>
uip tm testcases list-automations --project-key <key> [--folder-key <uuid>] [--package-name <name>]
uip tm testcases list-testsets --project-key <key> --test-case-key <key>
uip tm testcases run --project-key <key> --test-case-id <uuid...> --name <name> --execution-type <type> [--async] [--folder-key <uuid>] [--runtime-type <type>] [--robot-user-key <uuid>] [--machine-key <uuid>] [--host-machine-name <name>] [--service-user-name <name>] [--test-set-packages <json>]
uip tm testcases add --test-set-key <key> (--test-case-keys <keys...> | --labels <labels...> [--limit <count>])
uip tm testcases remove --test-set-key <key> --test-case-keys <keys> [-y]
uip tm testcases list-steps --project-key <key> --test-case-id <uuid>

uip tm testcases steps list --project-key <key> --test-case-id <uuid>
uip tm testcases steps get --project-key <key> --step-id <uuid>
uip tm testcases steps add --project-key <key> --test-case-id <uuid> [--description <text>] [--expected-result <text>] [--action-type <type>] [--clipboard-data <text>] [--order-no <n>] [--step <json>...]
uip tm testcases steps update --project-key <key> --step-id <uuid> [--description <text>] [--expected-result <text>] [--action-type <type>] [--clipboard-data <text>]
uip tm testcases steps move --project-key <key> --step-id <uuid> --target-position <n>
uip tm testcases steps delete --project-key <key> --step-id <uuid> [-y]

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

uip tm testcaselog start --project-key <key> --execution-id <uuid> --test-case-id <uuid> [--run-id <number>]
uip tm testcaselog finish --project-key <key> --execution-id <uuid> --test-case-id <uuid> --result <result> --has-error <boolean> --executed-by <email> [--detail-link <url>] [--run-id <number>] [--is-post-condition-met <boolean>] (--step-logs <json> | --step-logs-file <path>)
Wichtig:

list-assertions, start, and finish are registered under uip tm testcaselog (singular). uip tm testcaselogs list-assertions and uip tm testcaselogs start/finish do not exist as commands.

All verbs honor the global options and the standard exit codes.

Hinweis:

--log-level <level> (default Information) is available on create, list, list-result-history, update, delete, link-automation, link-package, unlink-automation, list-automations, list-testsets, add, and remove. It does not exist on run, any steps subcommand (including the list-steps alias), or testcaselog start/finish/list-assertions.

uip-tm-Testfälle erstellen

Erstellen eines neuen Testfalls innerhalb eines Projekts.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Erforderlich. Besitz des Projekts.
--name <name>Erforderlich. Testfallname.
--description <text>Freiform-Beschreibung. Standardmäßig leer.
--version <version>Zeichenfolge der Testfallversion. Die Standardeinstellung ist 1.0.0.

Beispiel

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

Datenform

{
  "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 (der öffentliche PROJECT:N -Bezeichner) ist das, was Sie an andere Verben übergeben. Die interne Id (UUID) wird für list-result-history und list-testsets benötigt.

Liste der UIP-TM-Testfälle

Listet alle Testfälle in einem Projekt auf. Die CLI durchläuft die Ergebnisse automatisch.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Erforderlich. Aufzulistendes Projekt.
--filter <text>Filtern Sie nach Name oder Schlüssel (serverseitige Suche).

Beispiel

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

Datenform

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

Liste der UIP-TM-Testfälle

Listen Sie die historischen Testfallprotokolle für einen einzelnen Testfall auf. Nimmt die interne --test-case-id (UUID) – suchen Sie nach der UUID über testcases list oder aus einer früheren TestCaseCreate -Ausgabe.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Erforderlich. Besitz des Projekts.
--test-case-id <uuid>Erforderlich. Interne Testfall-UUID.
--filter <text>Suchen Sie Testfallprotokolle anhand des Namens.
--only-failedVerknüpfung für „Nur fehlgeschlagene Protokolle anzeigen“ (Standard: false).
--results <results...>Durch Leerzeichen getrennte Ergebnisse, die eingeschlossen werden sollen. Akzeptierte Werte stammen aus der SDK-Aufzählung Result.
--statuses <statuses...>Durch Leerzeichen getrennte Ausführungsstatus. Akzeptierte Werte stammen aus der SDK-Aufzählung TestCaseLogExecutionStatus.
--duration-period <period>Filtern Sie nach Dauer-Bucket. Akzeptierte Werte stammen aus der SDK-Aufzählung DurationPeriod.
--top <number>Seitengröße. Die Standardeinstellung ist 50.
--skip <number>Ergebnisse, die übersprungen werden sollen. Die Standardeinstellung ist 0.
Hinweis:

Die genauen akzeptierten Werte für --results, --statuses und --duration-period werden zur Runtime aus den Test Manager SDK-Aufzählungen generiert, die mit der installierten Toolversion ausgeliefert werden. Führen Sie uip tm testcases list-result-history --help aus, um den aktuellen Satz anzuzeigen.

Beispiel

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

Datenform

{
  "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"
    }
  ]
}

Aktualisierung der UIP-TM-Testfälle

Rename a test case, or change its description, pre-condition, or post-condition. At least one of these fields is required.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Erforderlich. Besitz des Projekts.
--test-case-key <key>Erforderlich. Testfallschlüssel (z. B. DEMO:1).
--name <name>Neuer Name.
--description <text>Neue Beschreibung.
--pre-condition <text>New precondition — what must be true before running the test.
--post-condition <text>New postcondition — what should be true after running the test.

Beispiel

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

Datenform

{
  "Code": "TestCaseUpdate",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Name": "Login smoke (2026)",
    "Description": "Logs in and out",
    "PreCondition": "User account exists",
    "PostCondition": "User is logged out",
    "Result": "Updated"
  }
}
{
  "Code": "TestCaseUpdate",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Name": "Login smoke (2026)",
    "Description": "Logs in and out",
    "PreCondition": "User account exists",
    "PostCondition": "User is logged out",
    "Result": "Updated"
  }
}

UIP-TM-Testfälle löschen

Löschen Sie einen Testfall anhand seines Schlüssels.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Erforderlich. Besitz des Projekts.
--test-case-key <key>Erforderlich. Testfallschlüssel (z. B. DEMO:1).
-y, --yesÜberspringen Sie die Bestätigungsaufforderung. In nicht interaktiven Umgebungen erforderlich.

Beispiel

uip tm testcases delete \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --yes
uip tm testcases delete \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --yes

Datenform

{
  "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"
  }
}

Binden Sie einen Orchestrator-Paketeinstiegspunkt an einen Testfall. Dadurch wird der Testfall innerhalb eines Testsatzes ausführbar. Intern löst der Befehl den Anzeigenamen des Ordners aus --folder-key auf, sucht den passenden Paketeinstiegspunkt anhand des Namens und speichert dann die Bindung für den Testfall. Für Playwright-Testfälle, die von pack erstellt wurden, siehe die Warnung oben.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Erforderlich. Besitz des Projekts.
--test-case-key <key>Erforderlich. Zu bindender Testfall.
--folder-key <uuid>Erforderlich. UUID des Orchestrator-Ordners (von uip or folders list).
--package-name <name>Erforderlich. Bezeichner des Orchestrator-Pakets (z. B. InvoiceTests).
--test-name <name>Erforderlich. Der Testfallname innerhalb des Pakets (der Einstiegspunktname).

Beispiel

uip tm testcases 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 testcases link-automation \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests \
  --test-name SmokeTest

Datenform

{
  "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"
  }
}

Create and link a test case for every test in an Orchestrator package, in one call — the bulk counterpart to link-automation, which links one existing test case to one automation. By default it links every test the folder exposes; scope it to one package with --package-name, or to specific tests with --test-name. Each test either creates a new test case (Action: "Created") or reuses one already linked to that automation (Action: "Reused").

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Erforderlich. Besitz des Projekts.
--folder-key <uuid>Erforderlich. UUID des Orchestrator-Ordners (von uip or folders list).
--package-name <name>Only link tests from this package (case-insensitive exact match). Omit to link every test the folder exposes.
--test-name <name...>Only link these tests (case-insensitive, repeatable). Omit to link all of them.
--dry-runPreview which test cases would be created, reused, and linked, without writing anything.

Beispiele

# Create and link a test case for every test in one Orchestrator package
uip tm testcases link-package \
  --project-key DEMO \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests
# Create and link a test case for every test in one Orchestrator package
uip tm testcases link-package \
  --project-key DEMO \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests
# Preview what would be created and linked, without writing
uip tm testcases link-package \
  --project-key DEMO \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests \
  --dry-run
# Preview what would be created and linked, without writing
uip tm testcases link-package \
  --project-key DEMO \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests \
  --dry-run
# Link only two named tests out of the package
uip tm testcases link-package \
  --project-key DEMO \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests \
  --test-name SmokeTest RegressionTest
# Link only two named tests out of the package
uip tm testcases link-package \
  --project-key DEMO \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests \
  --test-name SmokeTest RegressionTest

Datenform

{
  "Code": "TestCaseLinkPackage",
  "Data": [
    {
      "TestName": "SmokeTest",
      "PackageName": "InvoiceTests",
      "PackageVersion": "1.0.2",
      "TestCaseKey": "DEMO:7",
      "TestCaseId": "a1b2c3d4-0000-0000-0000-000000000007",
      "Action": "Created"
    },
    {
      "TestName": "RegressionTest",
      "PackageName": "InvoiceTests",
      "PackageVersion": "1.0.2",
      "TestCaseKey": "DEMO:3",
      "TestCaseId": "a1b2c3d4-0000-0000-0000-000000000003",
      "Action": "Reused"
    }
  ]
}
{
  "Code": "TestCaseLinkPackage",
  "Data": [
    {
      "TestName": "SmokeTest",
      "PackageName": "InvoiceTests",
      "PackageVersion": "1.0.2",
      "TestCaseKey": "DEMO:7",
      "TestCaseId": "a1b2c3d4-0000-0000-0000-000000000007",
      "Action": "Created"
    },
    {
      "TestName": "RegressionTest",
      "PackageName": "InvoiceTests",
      "PackageVersion": "1.0.2",
      "TestCaseKey": "DEMO:3",
      "TestCaseId": "a1b2c3d4-0000-0000-0000-000000000003",
      "Action": "Reused"
    }
  ]
}

With --dry-run, the Code is TestCaseLinkPackageDryRun instead, Action values become WouldCreate/WouldReuse, and TestCaseKey/TestCaseId are empty strings since nothing was actually written.

Die Automatisierungsbindung aus einem Testfall entfernen. Nach dem Aufheben der Verknüpfung ist der Testfall nicht mehr ausführbar, bis er erneut verknüpft wird.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Erforderlich. Besitz des Projekts.
--test-case-key <key>Erforderlich. Testfall, dessen Verknüpfung aufgehoben werden soll.

Beispiel

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

Datenform

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

Listenautomatisierungen für UIP-TM-Testfälle

Listen Sie die Testeinstiegspunkte auf, die in einem Orchestrator-Ordner verfügbar sind. Verwenden Sie diese Option, um die Werte --package-name / --test-name zu erkennen, die an link-automation übergeben werden sollen.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Erforderlich. Eigenes Projekt (wird zum Scope der Suche verwendet).
--folder-key <uuid>Orchestrator folder UUID. Omit to search across the tenant feed instead of one folder.
--package-name <name>Filter the list to one package (case-insensitive exact match, not a substring search).

Beispiel

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

Datenform

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

UIP-TM-Testfälle – Listentestsätze

Listen Sie jeden Testsatz auf, der einen bestimmten Testfall enthält.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Erforderlich. Besitz des Projekts.
--test-case-key <key>Erforderlich. Testfallschlüssel (z. B. DEMO:1).

Beispiel

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

Datenform

{
  "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-Testfälle werden ausgeführt

Führen Sie einen oder mehrere Testfälle direkt aus einem Orchestrator-Paket aus, ohne zuerst einen Testsatz zu erstellen. testcases run startet eine Ausführung und gibt den Ausführungsdatensatz zurück. Weitere Informationen zu dieser Funktion finden Sie unter Ausführen von Testfällen ohne Testsatz in der Test Manager-Dokumentation.

Hinweis:

testcases run ist standardmäßig synchron – es wird blockiert, bis der Ausführungsdatensatz bestätigt wird. Um sofort nach dem Einreihung in die Warteschlange zurückzukehren, übergeben Sie --async. Zum Blockieren bis zum Ende der Ausführung leiten Sie die zurückgegebene Id an uip tm wait weiter.

Wann Sie testcases run vs. testsets runverwenden sollten

  • Verwenden Sie testcases run , um Testfälle bei Bedarf direkt aus einem Paket auszuführen.
  • Verwenden Sie testsets run , um eine benannte, kuratierte Gruppe von Testfällen auszuführen, die im Test Manager im Laufe der Zeit verwaltet werden.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Test Manager-Projektschlüssel (z. B. DEMO). Optional, wenn aus dem Kontext abgeleitet werden kann.
--test-case-id <uuid...>Erforderlich. Mindestens eine auszuführende Testfall-UUIDs, durch Leerzeichen getrennt. Rufen Sie UUIDs von testcases list ab.
--execution-type <type>Erforderlich. Ausführungstyp: automated, manual, mixed oder none.
--name <name>Anzeigename für die Ausführung.
--asyncKehren Sie sofort nach dem Einreihung in die Warteschlange zurück, ohne darauf zu warten, dass der Server bestätigt, dass die Ausführung gestartet wurde. Unterlassen Sie, zu warten, bis der Ausführungsdatensatz vollständig erstellt wurde, bevor Sie zurückgegeben werden.
--folder-key <uuid>Orchestrator-Ordner, in dem ausgeführt werden soll. Erforderlich, wenn die Testfälle mit Automatisierungen in einem bestimmten Ordner verknüpft sind.
--runtime-type <type>Überschreiben des Roboter-Runtime-Typs. Zulässige Werte: nonProduction, attended, unattended, rpaDeveloper, studioX, headless, rpaDeveloperPro, testAutomation, automationCloud, serverless, automationKit, serverlessTestAutomation, automationCloudTestAutomation, attendedStudioWeb, hosting, assistantWeb, processOrchestration, agentService, appTest, performanceTest, businessRule, caseManagement.
--robot-user-key <uuid>Roboterbenutzerschlüssel für das Ausführungsziel.
--machine-key <uuid>Maschinenschlüssel für das Ausführungsziel.
--host-machine-name <name>Hostmaschinenname für das Ausführungsziel.
--service-user-name <name>Dienstbenutzername für das Ausführungsziel.
--test-set-packages <json>JSON-Array von Paketüberschreibungen: [{"packageName":"Pkg","version":"1.0.0"}].

Beispiele

# Simplest — run a single test case (blocks until execution record is created)
uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --name "Login smoke run"
# Simplest — run a single test case (blocks until execution record is created)
uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --name "Login smoke run"
# Run multiple test cases asynchronously, then wait for completion
id=$(uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 a1b2c3d4-0000-0000-0000-000000000002 \
  --execution-type automated \
  --name "Smoke run" \
  --async \
  --output-filter Id)

uip tm wait --execution-id "$id" --project-key DEMO --timeout 900
uip tm report get --execution-id "$id" --project-key DEMO
# Run multiple test cases asynchronously, then wait for completion
id=$(uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 a1b2c3d4-0000-0000-0000-000000000002 \
  --execution-type automated \
  --name "Smoke run" \
  --async \
  --output-filter Id)

uip tm wait --execution-id "$id" --project-key DEMO --timeout 900
uip tm report get --execution-id "$id" --project-key DEMO
# Full override — specify folder, runtime, machine, and package version
uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --name "Smoke run" \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --runtime-type unattended \
  --machine-key 33333333-4444-5555-6666-777777777777 \
  --test-set-packages '[{"packageName":"InvoiceTests","version":"1.0.2"}]'
# Full override — specify folder, runtime, machine, and package version
uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --name "Smoke run" \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --runtime-type unattended \
  --machine-key 33333333-4444-5555-6666-777777777777 \
  --test-set-packages '[{"packageName":"InvoiceTests","version":"1.0.2"}]'

Datenform

{
  "Code": "TestCaseRun",
  "Data": {
    "Id": "b2c3d4e5-0000-0000-0000-000000000001",
    "Name": "Login smoke run",
    "ProjectId": "00000000-0000-0000-0000-000000000abc",
    "TestSetId": "a1b2c3d4-0000-0000-0000-000000000010",
    "TestSetObjKey": "DEMO:10",
    "Status": "Running",
    "ExecutionType": "automated",
    "Source": "Manual",
    "RunId": 1,
    "FolderKey": "f0f0f0f0-0000-0000-0000-000000000001",
    "ExecutionStart": "2025-04-15T10:30:00Z",
    "EnableCoverage": false,
    "EnforceExecutionOrder": false,
    "AutopilotForRobotsSettings": { "Enabled": false },
    "OrderedExecutionSettings": { "Enabled": false },
    "VideoRecordingSettings": { "Enabled": false }
  }
}
{
  "Code": "TestCaseRun",
  "Data": {
    "Id": "b2c3d4e5-0000-0000-0000-000000000001",
    "Name": "Login smoke run",
    "ProjectId": "00000000-0000-0000-0000-000000000abc",
    "TestSetId": "a1b2c3d4-0000-0000-0000-000000000010",
    "TestSetObjKey": "DEMO:10",
    "Status": "Running",
    "ExecutionType": "automated",
    "Source": "Manual",
    "RunId": 1,
    "FolderKey": "f0f0f0f0-0000-0000-0000-000000000001",
    "ExecutionStart": "2025-04-15T10:30:00Z",
    "EnableCoverage": false,
    "EnforceExecutionOrder": false,
    "AutopilotForRobotsSettings": { "Enabled": false },
    "OrderedExecutionSettings": { "Enabled": false },
    "VideoRecordingSettings": { "Enabled": false }
  }
}

Wichtige Felder:

  • Id – übergeben an uip tm wait, report get, result download, attachment download.
  • Status: "Running" – Die Ausführung wurde möglicherweise noch nicht ausgelöst.
  • Source: "Manual" – Alle testcases run -Ausführungen werden als manuell ausgelöst gekennzeichnet.

End-to-End-Workflow: Paket zu Ergebnissen

# 1. Discover your project key
uip tm project list --output json

# 2. Find the test case UUIDs you want to run
uip tm testcases list --project-key DEMO --filter "login" --output json

# 3. Find the folder that holds your package
uip or folders list --output json

# 4. Link the test case to the automation entry point
uip tm testcases link-automation \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests \
  --test-name SmokeTest

# 5. Run the test cases directly
id=$(uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --name "PR #42 smoke" \
  --output-filter Id)

# 6. Block until done (timeout in seconds — 15 minutes here)
uip tm wait \
  --execution-id "$id" \
  --project-key DEMO \
  --timeout 900

# 7. Read the result
uip tm report get --execution-id "$id" --project-key DEMO

# 8. Download JUnit XML for CI
uip tm result download \
  --execution-id "$id" \
  --project-key DEMO \
  --result-path ./junit.xml

# 9. Download screenshots and logs
uip tm attachment download \
  --execution-id "$id" \
  --project-key DEMO \
  --only-failed \
  --result-path ./attachments
# 1. Discover your project key
uip tm project list --output json

# 2. Find the test case UUIDs you want to run
uip tm testcases list --project-key DEMO --filter "login" --output json

# 3. Find the folder that holds your package
uip or folders list --output json

# 4. Link the test case to the automation entry point
uip tm testcases link-automation \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests \
  --test-name SmokeTest

# 5. Run the test cases directly
id=$(uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --name "PR #42 smoke" \
  --output-filter Id)

# 6. Block until done (timeout in seconds — 15 minutes here)
uip tm wait \
  --execution-id "$id" \
  --project-key DEMO \
  --timeout 900

# 7. Read the result
uip tm report get --execution-id "$id" --project-key DEMO

# 8. Download JUnit XML for CI
uip tm result download \
  --execution-id "$id" \
  --project-key DEMO \
  --result-path ./junit.xml

# 9. Download screenshots and logs
uip tm attachment download \
  --execution-id "$id" \
  --project-key DEMO \
  --only-failed \
  --result-path ./attachments

UIP-TM-Testfälle hinzufügen

Add test cases to an existing test set, either by explicit keys or by label. Pass exactly one of --test-case-keys or --labels.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--test-set-key <key>Erforderlich. Testsatzobjektschlüssel (z. B. DEMO:42).
--test-case-keys <keys...>Test case keys to add, space-separated (for example, DEMO:1 DEMO:2). Comma-separated values are also accepted. Mutually exclusive with --labels.
--labels <labels...>Space-separated label names. Adds every test case in the project carrying at least one of the labels — including the PW_Tag_*, PW_Project_*, PW_Suite_*, and PW_File_* labels applied by pack at ingestion. Mutually exclusive with --test-case-keys.
--limit <count>Maximum number of label-matched test cases to add. Only valid with --labels. Defaults to all matches.

Beispiele

# add by explicit keys
uip tm testcases add \
  --test-set-key DEMO:42 \
  --test-case-keys DEMO:1 DEMO:2

# add every test case carrying one of the given labels
uip tm testcases add \
  --test-set-key DEMO:42 \
  --labels PW_Tag_smoke PW_Project_chromium
# add by explicit keys
uip tm testcases add \
  --test-set-key DEMO:42 \
  --test-case-keys DEMO:1 DEMO:2

# add every test case carrying one of the given labels
uip tm testcases add \
  --test-set-key DEMO:42 \
  --labels PW_Tag_smoke PW_Project_chromium

Datenform

{
  "Code": "TestSetAddTestCases",
  "Data": {
    "TestSetKey": "DEMO:42",
    "Added": "DEMO:1, DEMO:2",
    "Result": "Added"
  }
}
{
  "Code": "TestSetAddTestCases",
  "Data": {
    "TestSetKey": "DEMO:42",
    "Added": "DEMO:1, DEMO:2",
    "Result": "Added"
  }
}

When adding by --labels, the response also includes MatchedLabels:

{
  "Code": "TestSetAddTestCases",
  "Data": {
    "TestSetKey": "DEMO:42",
    "Added": "DEMO:3, DEMO:4, DEMO:7",
    "MatchedLabels": "PW_Tag_smoke, PW_Project_chromium",
    "Result": "Added"
  }
}
{
  "Code": "TestSetAddTestCases",
  "Data": {
    "TestSetKey": "DEMO:42",
    "Added": "DEMO:3, DEMO:4, DEMO:7",
    "MatchedLabels": "PW_Tag_smoke, PW_Project_chromium",
    "Result": "Added"
  }
}

uip-tm-Testfälle entfernen

Entfernen Sie einen oder mehrere Testfälle aus einem Testsatz.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--test-set-key <key>Erforderlich. Testsatzobjektschlüssel (z. B. DEMO:42).
--test-case-keys <keys>Erforderlich. Durch Kommas getrennte Testfallschlüssel, die entfernt werden sollen (z. B. DEMO:1,DEMO:2).
-y, --yesÜberspringen Sie die Bestätigungsaufforderung. In nicht interaktiven Umgebungen erforderlich.

Beispiel

uip tm testcases remove \
  --test-set-key DEMO:42 \
  --test-case-keys DEMO:1,DEMO:2 \
  --yes
uip tm testcases remove \
  --test-set-key DEMO:42 \
  --test-case-keys DEMO:1,DEMO:2 \
  --yes

Datenform

{
  "Code": "TestSetRemoveTestCases",
  "Data": {
    "TestSetKey": "DEMO:42",
    "Removed": "DEMO:1, DEMO:2",
    "Result": "Removed"
  }
}
{
  "Code": "TestSetRemoveTestCases",
  "Data": {
    "TestSetKey": "DEMO:42",
    "Removed": "DEMO:1, DEMO:2",
    "Result": "Removed"
  }
}

Schritte für UIP-TM-Testfälle auflisten

Listen Sie die manuellen Testschritte eines Testfalls auf. Dies ist ein Alias für testcases steps list.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Erforderlich. Test Manager-Projektschlüssel (z. B. DEMO).
--test-case-id <uuid>Erforderlich. Interne Testfall-UUID.

Beispiel

uip tm testcases list-steps \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001
uip tm testcases list-steps \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001

Datenform

{
  "Code": "TestCaseStepsList",
  "Data": [
    {
      "Id": "d4e5f6a7-0000-0000-0000-000000000001",
      "TestCaseId": "a1b2c3d4-0000-0000-0000-000000000001",
      "OrderNo": 0,
      "ActionType": "Manual",
      "Description": "Open login page",
      "ExpectedResult": "Login form is displayed"
    }
  ]
}
{
  "Code": "TestCaseStepsList",
  "Data": [
    {
      "Id": "d4e5f6a7-0000-0000-0000-000000000001",
      "TestCaseId": "a1b2c3d4-0000-0000-0000-000000000001",
      "OrderNo": 0,
      "ActionType": "Manual",
      "Description": "Open login page",
      "ExpectedResult": "Login form is displayed"
    }
  ]
}

Schritte für UIP-TM-Testfälle

testcases steps ist eine Untergruppe, die die einzelnen manuellen Schritte eines Testfalls verwaltet: Auflisten, Abrufen, Hinzufügen, Aktualisieren, Verschieben und Löschen.

UIP-TM-Testfallschritte

Listen Sie die Schritte eines Testfalls in der richtigen Reihenfolge auf.

Argumente

Keine.

Optionen
MarkierenBeschreibung
--project-key <key>Erforderlich. Test Manager-Projektschlüssel.
--test-case-id <uuid>Erforderlich. Interne Testfall-UUID.
Beispiel
uip tm testcases steps list \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001
uip tm testcases steps list \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001
Datenform
{
  "Code": "TestCaseStepsList",
  "Data": [
    {
      "Id": "d4e5f6a7-0000-0000-0000-000000000001",
      "OrderNo": 0,
      "ActionType": "Manual",
      "Description": "Open login page",
      "ExpectedResult": "Login form is displayed"
    }
  ]
}
{
  "Code": "TestCaseStepsList",
  "Data": [
    {
      "Id": "d4e5f6a7-0000-0000-0000-000000000001",
      "OrderNo": 0,
      "ActionType": "Manual",
      "Description": "Open login page",
      "ExpectedResult": "Login form is displayed"
    }
  ]
}

Rufen Sie die Schritte für die UIP-TM-Testfälle ab

Rufen Sie einen einzelnen Schritt anhand seiner UUID ab.

Argumente

Keine.

Optionen
MarkierenBeschreibung
--project-key <key>Erforderlich. Test Manager-Projektschlüssel.
--step-id <uuid>Erforderlich. Testschritt-UUID (von steps list).
Beispiel
uip tm testcases steps get \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001
uip tm testcases steps get \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001
Datenform
{
  "Code": "TestStepGet",
  "Data": {
    "Id": "d4e5f6a7-0000-0000-0000-000000000001",
    "OrderNo": 0,
    "ActionType": "Manual",
    "Description": "Open login page",
    "ExpectedResult": "Login form is displayed"
  }
}
{
  "Code": "TestStepGet",
  "Data": {
    "Id": "d4e5f6a7-0000-0000-0000-000000000001",
    "OrderNo": 0,
    "ActionType": "Manual",
    "Description": "Open login page",
    "ExpectedResult": "Login form is displayed"
  }
}

UIP-TM-Testfälle Schritte hinzufügen

Fügen Sie einem Testfall einen oder mehrere Schritte hinzu. Verwenden Sie Inline-Flags für einen einzelnen Schritt oder --step <json> (wiederholbar) für mehrere gleichzeitig.

Argumente

Keine.

Optionen
MarkierenBeschreibung
--project-key <key>Erforderlich. Test Manager-Projektschlüssel.
--test-case-id <uuid>Erforderlich. Testfall, dem Schritte hinzugefügt werden sollen.
--description <text>Schrittbeschreibung (Einzelschrittmodus).
--expected-result <text>Erwartetes Ergebnis (Einzelschrittmodus).
--action-type <type>Schrittaktionstyp (Einzelschrittmodus).
--clipboard-data <text>Testdaten, die für den Schritt kopiert werden sollen (Einzelschrittmodus).
--order-no <n>0-basierte Einfügeposition; auf Anfügen am Ende weglassen (Einzelschrittmodus).
--step <json>Ein Schritt als JSON-Objekt ({"description":"...","expectedResult":"..."}). Wiederholen Sie den Vorgang, um mehrere Schritte hinzuzufügen.
Beispiele
# single step
uip tm testcases steps add \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --description "Open login page" \
  --expected-result "Login form is displayed"

# multiple steps
uip tm testcases steps add \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --step '{"description":"Open login page","expectedResult":"Login form is shown"}' \
  --step '{"description":"Enter credentials","clipboardData":"user@acme.com"}' \
  --step '{"description":"Click submit","expectedResult":"Dashboard loads"}'
# single step
uip tm testcases steps add \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --description "Open login page" \
  --expected-result "Login form is displayed"

# multiple steps
uip tm testcases steps add \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --step '{"description":"Open login page","expectedResult":"Login form is shown"}' \
  --step '{"description":"Enter credentials","clipboardData":"user@acme.com"}' \
  --step '{"description":"Click submit","expectedResult":"Dashboard loads"}'
Datenform
{
  "Code": "TestStepAdd",
  "Data": {
    "AddedCount": 1,
    "Steps": [
      {
        "Id": "d4e5f6a7-0000-0000-0000-000000000001",
        "TestCaseId": "a1b2c3d4-0000-0000-0000-000000000001",
        "OrderNo": 0,
        "ActionType": "",
        "Description": "Open login page",
        "ExpectedResult": "Login form is displayed",
        "ClipboardData": ""
      }
    ]
  }
}
{
  "Code": "TestStepAdd",
  "Data": {
    "AddedCount": 1,
    "Steps": [
      {
        "Id": "d4e5f6a7-0000-0000-0000-000000000001",
        "TestCaseId": "a1b2c3d4-0000-0000-0000-000000000001",
        "OrderNo": 0,
        "ActionType": "",
        "Description": "Open login page",
        "ExpectedResult": "Login form is displayed",
        "ClipboardData": ""
      }
    ]
  }
}

Adding steps is not atomic: if one step in a multi-step --step batch fails, the steps before it remain created. The error message reports how many succeeded so you can inspect with steps list and retry only the remainder.

Aktualisierung der UIP-TM-Testfallschritte

Aktualisieren Sie die Beschreibung eines Schritts, das erwartete Ergebnis, den Aktionstyp oder die Zwischenablagedaten. Mindestens eines dieser Felder muss ausgefüllt werden.

Argumente

Keine.

Optionen
MarkierenBeschreibung
--project-key <key>Erforderlich. Test Manager-Projektschlüssel.
--step-id <uuid>Erforderlich. Testschritt-UUID.
--description <text>Neue Beschreibung.
--expected-result <text>Neues erwartetes Ergebnis.
--action-type <type>Neuer Aktionstyp.
--clipboard-data <text>Neue Daten in der Zwischenablage.
Beispiel
uip tm testcases steps update \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001 \
  --expected-result "Dashboard is shown"
uip tm testcases steps update \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001 \
  --expected-result "Dashboard is shown"
Datenform
{
  "Code": "TestStepUpdate",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Updated"
  }
}
{
  "Code": "TestStepUpdate",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Updated"
  }
}

uip-tm-Testfälle Schritte verschieben

Verschieben Sie einen Schritt an eine neue Position in der Testfallreihenfolge.

Argumente

Keine.

Optionen
MarkierenBeschreibung
--project-key <key>Erforderlich. Test Manager-Projektschlüssel.
--step-id <uuid>Erforderlich. Testschritt-UUID.
--target-position <n>Erforderlich. Neue 0-basierte Position (0 = first). Entspricht dem Feld OrderNo aus steps list.
Beispiel
uip tm testcases steps move \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001 \
  --target-position 2
uip tm testcases steps move \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001 \
  --target-position 2
Datenform
{
  "Code": "TestStepMove",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "TargetPosition": 2,
    "Result": "Moved"
  }
}
{
  "Code": "TestStepMove",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "TargetPosition": 2,
    "Result": "Moved"
  }
}

UIP-TM-Testfallschritte löschen

Einen Schritt aus einem Testfall löschen. Dies ist endgültig.

Argumente

Keine.

Optionen
MarkierenBeschreibung
--project-key <key>Erforderlich. Test Manager-Projektschlüssel.
--step-id <uuid>Erforderlich. Testschritt-UUID.
-y, --yesErforderlich. Bestätigen Sie diesen nicht rückgängig zu machenden Vorgang.
Beispiel
uip tm testcases steps delete \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001 \
  --yes
uip tm testcases steps delete \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001 \
  --yes
Datenform
{
  "Code": "TestStepDelete",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Deleted"
  }
}
{
  "Code": "TestStepDelete",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Deleted"
  }
}

uip tm testcaselog list-assertions

Listen Sie die Assertionen auf, die für ein einzelnes Testfallprotokoll aufgezeichnet wurden. Bei jeder Ausführung eines Testfalls wird genau ein Testfallprotokoll erzeugt; seine Assertionen sind die einzelnen von der Automatisierung aufgezeichnete Prüfungen. Dieses Verb zeigt , warum ein Testfallprotokoll markiert ist Failed.

This verb is registered under testcaselog (singular), alongside testcaselog start and testcaselog finish below — not under testcases or testcaselogs (plural). uip tm testcaselogs list-assertions does not exist.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--test-case-log-id <uuid>Erforderlich. UUID des Testfallprotokolls. Rufen Sie es von uip tm executions testcaselogs list oder uip tm testcases list-result-history ab.
--project-key <key>Erforderlich. Besitz des Projekts.

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

Datenform

{
  "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 }
  ]
}

uip tm testcaselog starten

Start a test case execution within an existing test execution. Used by automations and integrations to record manual or mixed test case runs — most users don't call this directly.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Erforderlich. Besitz des Projekts.
--execution-id <uuid>Required. The test execution in which the test case is running.
--test-case-id <uuid>Erforderlich. Interne UUID des Testfalls, der protokolliert wird.
--run-id <number>Run ID to record against. Omit to look it up automatically from the execution's current RunId.

Beispiel

uip tm testcaselog start \
  --project-key DEMO \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --test-case-id b2c3d4e5-0000-0000-0000-000000000001
uip tm testcaselog start \
  --project-key DEMO \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --test-case-id b2c3d4e5-0000-0000-0000-000000000001

Datenform

{
  "Code": "TestCaseLogStart",
  "Data": {
    "Id": "c3d4e5f6-0000-0000-0000-000000000001",
    "TestCaseId": "b2c3d4e5-0000-0000-0000-000000000001",
    "ProjectId": "00000000-0000-0000-0000-000000000abc",
    "TestExecutionId": "a1b2c3d4-0000-0000-0000-000000000001",
    "Result": "None",
    "BusinessResult": "None",
    "OriginalResult": "None",
    "Status": "Running",
    "ExecutionType": "manual",
    "HasError": false,
    "ExecutionStart": "2025-04-15T10:30:00Z",
    "ExecutionEnd": null,
    "ExecutedBy": "alice@example.com",
    "RunId": 1,
    "Updated": "2025-04-15T10:30:00Z"
  }
}
{
  "Code": "TestCaseLogStart",
  "Data": {
    "Id": "c3d4e5f6-0000-0000-0000-000000000001",
    "TestCaseId": "b2c3d4e5-0000-0000-0000-000000000001",
    "ProjectId": "00000000-0000-0000-0000-000000000abc",
    "TestExecutionId": "a1b2c3d4-0000-0000-0000-000000000001",
    "Result": "None",
    "BusinessResult": "None",
    "OriginalResult": "None",
    "Status": "Running",
    "ExecutionType": "manual",
    "HasError": false,
    "ExecutionStart": "2025-04-15T10:30:00Z",
    "ExecutionEnd": null,
    "ExecutedBy": "alice@example.com",
    "RunId": 1,
    "Updated": "2025-04-15T10:30:00Z"
  }
}

Id is the test case log UUID — pass it to uip tm teststeplog list or testcaselog list-assertions once the run is finished. The full response includes many more fields (AutomationId, JobKey, PreCondition, PostCondition, and others) mostly empty at start time; only the fields relevant to tracking progress are shown here.

uip tm testcaselog fertig stellen

Finish a test case execution started with testcaselog start, recording the overall result and (optionally) every step result in one call.

Wichtig:

There is no --test-case-log-id or --info flag on this command. finish re-identifies the run via --execution-id + --test-case-id (the same pair passed to start), not by the log UUID start returned.

Argumente

Keine.

Optionen

MarkierenBeschreibung
--project-key <key>Erforderlich. Besitz des Projekts.
--execution-id <uuid>Required. The test execution passed to testcaselog start.
--test-case-id <uuid>Required. The test case passed to testcaselog start.
--result <result>Required. Overall result (from the SDK Result enum, for example Passed, Failed).
--has-error <boolean>Required. Mark the execution as having an error (true/false).
--executed-by <email>Required. Email of the user who executed the test.
--detail-link <url>URL with additional execution details.
--run-id <number>Run ID to record against. Omit to look it up automatically from the execution's current RunId.
--is-post-condition-met <boolean>Mark whether the post-condition was met.
--step-logs <json>JSON array of step log objects to record for this test case execution. Mutually exclusive with --step-logs-file.
--step-logs-file <path>Path to a JSON file with the same shape as --step-logs. Mutually exclusive with --step-logs.

Beispiele

# finish with step results inline
uip tm testcaselog finish \
  --project-key DEMO \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --test-case-id b2c3d4e5-0000-0000-0000-000000000001 \
  --result Passed \
  --has-error false \
  --executed-by alice@example.com \
  --is-post-condition-met true \
  --step-logs '[{"id":"3fa85f64-0000-0000-0000-000000000001","testStepId":"d4e5f6a7-0000-0000-0000-000000000001","result":"Passed","orderNo":1,"hasError":false,"hasAttachment":false}]'

# finish with step results loaded from a file
uip tm testcaselog finish \
  --project-key DEMO \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --test-case-id b2c3d4e5-0000-0000-0000-000000000001 \
  --result Failed \
  --has-error true \
  --executed-by alice@example.com \
  --step-logs-file ./step-logs.json
# finish with step results inline
uip tm testcaselog finish \
  --project-key DEMO \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --test-case-id b2c3d4e5-0000-0000-0000-000000000001 \
  --result Passed \
  --has-error false \
  --executed-by alice@example.com \
  --is-post-condition-met true \
  --step-logs '[{"id":"3fa85f64-0000-0000-0000-000000000001","testStepId":"d4e5f6a7-0000-0000-0000-000000000001","result":"Passed","orderNo":1,"hasError":false,"hasAttachment":false}]'

# finish with step results loaded from a file
uip tm testcaselog finish \
  --project-key DEMO \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --test-case-id b2c3d4e5-0000-0000-0000-000000000001 \
  --result Failed \
  --has-error true \
  --executed-by alice@example.com \
  --step-logs-file ./step-logs.json

Datenform

{
  "Code": "TestCaseLogFinish",
  "Data": {
    "Id": "c3d4e5f6-0000-0000-0000-000000000001",
    "TestCaseId": "b2c3d4e5-0000-0000-0000-000000000001",
    "ProjectId": "00000000-0000-0000-0000-000000000abc",
    "TestExecutionId": "a1b2c3d4-0000-0000-0000-000000000001",
    "Result": "Passed",
    "BusinessResult": "Passed",
    "OriginalResult": "Passed",
    "Status": "Finished",
    "ExecutionType": "manual",
    "HasError": false,
    "ExecutionStart": "2025-04-15T10:30:00Z",
    "ExecutionEnd": "2025-04-15T10:31:00Z",
    "ExecutedBy": "alice@example.com",
    "RunId": 1,
    "IsPostConditionMet": true,
    "Updated": "2025-04-15T10:31:00Z"
  }
}
{
  "Code": "TestCaseLogFinish",
  "Data": {
    "Id": "c3d4e5f6-0000-0000-0000-000000000001",
    "TestCaseId": "b2c3d4e5-0000-0000-0000-000000000001",
    "ProjectId": "00000000-0000-0000-0000-000000000abc",
    "TestExecutionId": "a1b2c3d4-0000-0000-0000-000000000001",
    "Result": "Passed",
    "BusinessResult": "Passed",
    "OriginalResult": "Passed",
    "Status": "Finished",
    "ExecutionType": "manual",
    "HasError": false,
    "ExecutionStart": "2025-04-15T10:30:00Z",
    "ExecutionEnd": "2025-04-15T10:31:00Z",
    "ExecutedBy": "alice@example.com",
    "RunId": 1,
    "IsPostConditionMet": true,
    "Updated": "2025-04-15T10:31:00Z"
  }
}
  • pack – packt ein Playwright-Projekt und verknüpft seine Testfälle zum Zeitpunkt der Erfassung automatisch; verwenden Sie link-automation nicht für die von ihm erstellten Testfälle.
  • project – Scope, der jeden Testfall besitzt.
  • testsets – gruppieren Testfälle in einer ausführbaren Suite.
  • Ausführungen – Ansichten von Testfallprotokollen auf Ausführungsebene.
  • Bericht – Zusammenfassung einer Ausführung mit fehlgeschlagenen Fällen und Assertionstext.

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