UiPath Documentation
uipath-cli
latest
false
Guía del usuario de UiPath CLI
Importante :
Este contenido se ha traducido mediante traducción automática. La localización de contenidos recién publicados puede tardar entre una y dos semanas en estar disponible.

Casos de prueba de uip tm

Sintaxis y opciones para `uip tm testcases`, que gestiona los casos de prueba, incluida la creación, la lista, la actualización, la eliminación, las automatizaciones de enlaces y la gestión del registro de casos de prueba.

uip tm testcases los casos de prueba dentro de un proyecto de Test Manager: crea, enumera, actualiza, elimina, vincula o desvincula una automatización de Orchestrator, inspecciona los resultados históricos y añade o elimina casos de prueba de un conjunto de pruebas. También proporciona testcases run : una forma de ejecutar uno o más casos de prueba directamente desde un paquete de Orchestrator. Esta página también documenta uip tm testcaselogs list-assertions, que lee los artefactos de aserción adjuntos a un único registro de caso de prueba, y los verbos testcaselog start / testcaselog finish utilizados por las automatizaciones para registrar entradas de registro manuales.

Un caso de prueba es la unidad de autoría. Se vuelve ejecutable una vez que se vincula a un punto de entrada de paquete con testcases link-automation. A continuación, se puede ejecutar un caso de prueba como parte de un conjunto de pruebas (consulta Conjuntos de pruebas) o directamente a través de testcases run.

Sinopsis

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>]
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 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>
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 testcaselogs list-assertions --project-key <key> --test-case-log-id <uuid>

uip tm testcaselog start --execution-id <uuid> --test-case-id <uuid> [--execution-type <type>]
uip tm testcaselog finish --test-case-log-id <uuid> [--info <text>]
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>]
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 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>
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 testcaselogs list-assertions --project-key <key> --test-case-log-id <uuid>

uip tm testcaselog start --execution-id <uuid> --test-case-id <uuid> [--execution-type <type>]
uip tm testcaselog finish --test-case-log-id <uuid> [--info <text>]

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

creación de casos de prueba de uip tm

Crea un nuevo caso de prueba dentro de un proyecto.

Argumentos

Nada.

Opciones

MarcaDescripción
--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.

Ejemplo

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"

Forma de datos

{
  "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 (el identificador público PROJECT:N ) es lo que pasas a otros verbos. El Id interno (UUID) es necesario para list-result-history y list-testsets.

lista de casos de prueba de uip tm

List all test cases in a project. The CLI pages through results automatically.

Argumentos

Nada.

Opciones

MarcaDescripción
--project-key <key>Required. Project to list.
--filter <text>Filter by name or key (server-side search).

Ejemplo

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

Forma de datos

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

uip tm testcases lista-resultados-historial

Enumera los registros de casos de prueba históricos para un solo caso de prueba. Toma el --test-case-id (UUID) interno: busca el UUID a través de testcases list o de una salida TestCaseCreate anterior.

Argumentos

Nada.

Opciones

MarcaDescripción
--project-key <key>Required. Owning project.
--test-case-id <uuid>Required. Internal test case UUID.
--filter <text>Search test case logs by name.
--only-failedShortcut 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.
Nota:

Los valores aceptados exactos para --results, --statuses y --duration-period se generan en tiempo de ejecución a partir de las enumeraciones del SDK de Test Manager enviadas con la versión de la herramienta instalada. Ejecuta uip tm testcases list-result-history --help para ver el conjunto actual.

Ejemplo

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

Forma de datos

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

actualización de casos de prueba de uip tm

Rename a test case or change its description. At least one of --name or --description is required.

Argumentos

Nada.

Opciones

MarcaDescripción
--project-key <key>Required. Owning project.
--test-case-key <key>Required. Test case key (for example, DEMO:1).
--name <name>Nuevo nombre.
--description <text>Nueva descripción.

Ejemplo

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)"

Forma de datos

{
  "Code": "TestCaseUpdate",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Name": "Login smoke (2026)",
    "Result": "Updated"
  }
}
{
  "Code": "TestCaseUpdate",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Name": "Login smoke (2026)",
    "Result": "Updated"
  }
}

eliminación de casos de prueba de uip tm

Eliminar un caso de prueba por su clave.

Argumentos

Nada.

Opciones

MarcaDescripción
--project-key <key>Required. Owning project.
--test-case-key <key>Required. Test case key (for example, DEMO:1).
-y, --yesSkip the confirmation prompt. Required in non-interactive environments.

Ejemplo

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

Forma de datos

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

Argumentos

Nada.

Opciones

MarcaDescripción
--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 (for example, InvoiceTests).
--test-name <name>Required. The test case name inside the package (the entry point name).

Ejemplo

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

Forma de datos

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

Elimina la vinculación de automatización de un caso de prueba. Después de desvincularse, el caso de prueba ya no es ejecutable hasta que se vuelva a vincular.

Argumentos

Nada.

Opciones

MarcaDescripción
--project-key <key>Required. Owning project.
--test-case-key <key>Required. Test case to unlink.

Ejemplo

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

Forma de datos

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

uip tm casos de prueba lista-automatizaciones

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.

Argumentos

Nada.

Opciones

MarcaDescripción
--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).

Ejemplo

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

Forma de datos

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

uip tm testcases list-testsets

Enumera cada conjunto de pruebas que contiene un caso de prueba determinado.

Argumentos

Nada.

Opciones

MarcaDescripción
--project-key <key>Required. Owning project.
--test-case-key <key>Required. Test case key (for example, DEMO:1).

Ejemplo

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

Forma de datos

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

ejecución de casos de prueba de uip tm

Ejecuta uno o más casos de prueba directamente desde un paquete de Orchestrator, sin crear primero un conjunto de pruebas. testcases run inicia una ejecución y devuelve el registro de ejecución. Para obtener más información sobre esta capacidad, consulta Ejecutar casos de prueba sin un conjunto de pruebas en la documentación de Test Manager.

Nota:

testcases run es síncrono de forma predeterminada: se bloquea hasta que se confirma el registro de ejecución. Para volver inmediatamente después de poner en cola, pasa --async. Para bloquear hasta que finalice la ejecución, canaliza el Id devuelto a uip tm wait.

Cuándo utilizar testcases run frente a testsets run

  • testcases run para ejecutar casos de prueba bajo demanda directamente desde un paquete.
  • Usa testsets run para ejecutar un grupo de casos de prueba nombrados y seleccionados que se gestionan a lo largo del tiempo en Test Manager.

Argumentos

Nada.

Opciones

MarcaDescripción
--project-key <key>Test Manager project key (for example, DEMO). Optional if derivable from context.
--test-case-id <uuid...>Required. One or more test case UUIDs to run, space-separated. Get UUIDs from testcases list.
--execution-type <type>Required. Execution type: automated, manual, mixed, or none.
--name <name>Display name for the execution.
--asyncReturn immediately after queuing, without waiting for the server to confirm the execution has started. Omit to wait for the execution record to be fully created before returning.
--folder-key <uuid>Orchestrator folder to run in. Required when the test cases are linked to automations in a specific folder.
--runtime-type <type>Robot runtime type override. Accepted values: 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>Robot user key for the execution target.
--machine-key <uuid>Machine key for the execution target.
--host-machine-name <name>Host machine name for the execution target.
--service-user-name <name>Service user name for the execution target.
--test-set-packages <json>JSON array of package overrides: [{"packageName":"Pkg","version":"1.0.0"}].

Ejemplos

# 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 900000
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 900000
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"}]'

Forma de datos

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

Campos clave:

  • Id : pasar a uip tm wait, report get, result download, attachment download.
  • Status: "Running" : es posible que la ejecución aún no se haya enviado.
  • Source: "Manual" : todas las ejecuciones testcases run se etiquetan como desencadenadas manualmente.

Flujo de trabajo de extremo a extremo: paquete a resultados

# 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 ms — 15 minutes here)
uip tm wait \
  --execution-id "$id" \
  --project-key DEMO \
  --timeout 900000

# 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 ms — 15 minutes here)
uip tm wait \
  --execution-id "$id" \
  --project-key DEMO \
  --timeout 900000

# 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

añadir casos de prueba de uip tm

Añade uno o más casos de prueba a un conjunto de pruebas existente.

Argumentos

Nada.

Opciones

MarcaDescripción
--test-set-key <key>Required. Test set object key (for example, DEMO:42).
--test-case-keys <keys>Required. Comma-separated test case keys to add (for example, DEMO:1,DEMO:2).

Ejemplo

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

Forma de datos

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

eliminar casos de prueba de uip tm

Elimina uno o más casos de prueba de un conjunto de pruebas.

Argumentos

Nada.

Opciones

MarcaDescripción
--test-set-key <key>Required. Test set object key (for example, DEMO:42).
--test-case-keys <keys>Required. Comma-separated test case keys to remove (for example, DEMO:1,DEMO:2).
-y, --yesSkip the confirmation prompt. Required in non-interactive environments.

Ejemplo

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

Forma de datos

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

UIP tm casos de prueba lista-pasos

Enumera los pasos de prueba manuales de un caso de prueba. Este es un alias para testcases steps list.

Argumentos

Nada.

Opciones

MarcaDescripción
--project-key <key>Test Manager project key (for example, DEMO).
--test-case-id <uuid>Required. Internal test case UUID.

Ejemplo

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

Forma de datos

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

pasos de casos de prueba de uip tm

testcases steps es un subgrupo que gestiona los pasos manuales individuales de un caso de prueba: enumerar, obtener, añadir, actualizar, mover y eliminar.

lista de pasos de casos de prueba de uip tm

Enumera los pasos de un caso de prueba en orden.

Argumentos

Nada.

Opciones
MarcaDescripción
--project-key <key>Test Manager project key.
--test-case-id <uuid>Required. Internal test case UUID.
Ejemplo
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
Forma de datos
{
  "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"
    }
  ]
}

uip tm casos de prueba pasos obtener

Obtener un solo paso por su UUID.

Argumentos

Nada.

Opciones
MarcaDescripción
--project-key <key>Test Manager project key.
--step-id <uuid>Required. Test step UUID (from steps list).
Ejemplo
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
Forma de datos
{
  "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 casos de prueba pasos añadir

Añade uno o más pasos a un caso de prueba. Utilice marcadores en línea para un solo paso o ( --step <json> ) para varios a la vez.

Argumentos

Nada.

Opciones
MarcaDescripción
--project-key <key>Test Manager project key.
--test-case-id <uuid>Required. Test case to add steps to.
--description <text>Step description (single-step mode).
--expected-result <text>Expected outcome (single-step mode).
--action-type <type>Step action type (single-step mode).
--clipboard-data <text>Test data to copy for the step (single-step mode).
--order-no <n>0-based insert position; omit to append at the end (single-step mode).
--step <json>A step as a JSON object ({"description":"...","expectedResult":"..."}). Repeat to add several steps.
Ejemplos
# 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":"[email protected]"}' \
  --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":"[email protected]"}' \
  --step '{"description":"Click submit","expectedResult":"Dashboard loads"}'
Forma de datos
{
  "Code": "TestStepAdd",
  "Data": [
    {
      "Id": "d4e5f6a7-0000-0000-0000-000000000001",
      "OrderNo": 0,
      "Description": "Open login page",
      "ExpectedResult": "Login form is displayed"
    }
  ]
}
{
  "Code": "TestStepAdd",
  "Data": [
    {
      "Id": "d4e5f6a7-0000-0000-0000-000000000001",
      "OrderNo": 0,
      "Description": "Open login page",
      "ExpectedResult": "Login form is displayed"
    }
  ]
}

Actualización de pasos de casos de prueba de uip tm

Actualice la descripción de un paso, el resultado esperado, el tipo de acción o los datos del portapapeles. Se debe proporcionar al menos uno de estos campos.

Argumentos

Nada.

Opciones
MarcaDescripción
--project-key <key>Test Manager project key.
--step-id <uuid>Required. Test step UUID.
--description <text>Nueva descripción.
--expected-result <text>New expected result.
--action-type <type>New action type.
--clipboard-data <text>New clipboard data.
Ejemplo
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"
Forma de datos
{
  "Code": "TestStepUpdate",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Updated"
  }
}
{
  "Code": "TestStepUpdate",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Updated"
  }
}

uip tm casos de prueba pasos mover

Mueve un paso a una nueva posición en el orden de los casos de prueba.

Argumentos

Nada.

Opciones
MarcaDescripción
--project-key <key>Test Manager project key.
--step-id <uuid>Required. Test step UUID.
--target-position <n>Required. New 0-based position (0 = first). Matches the OrderNo field from steps list.
Ejemplo
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
Forma de datos
{
  "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 casos de prueba pasos eliminar

Eliminar un paso de un caso de prueba. Esto es permanente.

Argumentos

Nada.

Opciones
MarcaDescripción
--project-key <key>Test Manager project key.
--step-id <uuid>Required. Test step UUID.
-y, --yesRequired. Confirm this irreversible operation.
Ejemplo
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
Forma de datos
{
  "Code": "TestStepDelete",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Deleted"
  }
}
{
  "Code": "TestStepDelete",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Deleted"
  }
}

uip tm testcaselogs list-assertions

Enumera las aserciones registradas para un solo registro de caso de prueba. Cada ejecución de un caso de prueba produce exactamente un registro de caso de prueba; sus aserciones son las comprobaciones individuales que registró la automatización. Este verbo muestra por qué un registro de casos de prueba está marcado como Failed.

Este verbo está registrado en testcaselogs, no en testcases, pero se documenta aquí porque lee artefactos de aserción para el registro de un caso de prueba.

Argumentos

Nada.

Opciones

MarcaDescripción
--test-case-log-id <uuid>Required. Test case log UUID. Get it from uip tm executions testcaselogs list or uip tm testcases list-result-history.
--project-key <key>Required. Owning project.

Ejemplo

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

Forma de datos

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

inicio de registro de caso de prueba de uip tm

Señala el inicio de una entrada de registro de caso de prueba manual para un caso de prueba específico dentro de una ejecución.

Argumentos

Nada.

Opciones

MarcaDescripción
--execution-id <uuid>Required. The execution in which the test case is running.
--test-case-id <uuid>Required. Internal UUID of the test case being logged.
--execution-type <type>Execution type for the log entry (for example, automated, manual). Optional.

Ejemplo

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

Forma de datos

{
  "Code": "TestCaseLogStart",
  "Data": {
    "TestCaseLogId": "c3d4e5f6-0000-0000-0000-000000000001",
    "Status": "InProgress"
  }
}
{
  "Code": "TestCaseLogStart",
  "Data": {
    "TestCaseLogId": "c3d4e5f6-0000-0000-0000-000000000001",
    "Status": "InProgress"
  }
}

uip tm testcaselog finish

Señala el final de una entrada de registro de caso de prueba iniciada manualmente.

Argumentos

Nada.

Opciones

MarcaDescripción
--test-case-log-id <uuid>Required. The log ID returned by testcaselog start.
--info <text>Optional error or informational message to attach to the log entry.

Ejemplo

uip tm testcaselog finish \
  --test-case-log-id c3d4e5f6-0000-0000-0000-000000000001 \
  --info "Login button not found on page"
uip tm testcaselog finish \
  --test-case-log-id c3d4e5f6-0000-0000-0000-000000000001 \
  --info "Login button not found on page"

Forma de datos

{
  "Code": "TestCaseLogFinish",
  "Data": {
    "TestCaseLogId": "c3d4e5f6-0000-0000-0000-000000000001",
    "Result": "Finished"
  }
}
{
  "Code": "TestCaseLogFinish",
  "Data": {
    "TestCaseLogId": "c3d4e5f6-0000-0000-0000-000000000001",
    "Result": "Finished"
  }
}
  • proyecto : ámbito que posee cada caso de prueba.
  • conjuntos de pruebas : agrupa los casos de prueba en una suite ejecutable.
  • ejecuciones : vistas en el nivel de ejecución de los registros de casos de prueba.
  • informe : resumen de una ejecución, con casos fallidos y texto de aserción.

Ver también

¿Te ha resultado útil esta página?

Conectar

¿Necesita ayuda? Soporte

¿Quiere aprender? UiPath Academy

¿Tiene alguna pregunta? Foro de UiPath

Manténgase actualizado