UiPath Documentation
uipath-cli
latest
false
Guia do usuário da UiPath CLI
Importante :
Este conteúdo foi traduzido com auxílio de tradução automática. A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.

casos de teste uip tm

Sintaxe e opções para "uip tm testcases", que gerencia casos de teste incluindo criar, listar, atualizar, excluir, vincular automações e gerenciamento de log de casos de teste.

uip tm testcases gerencia casos de teste dentro de um projeto do Test Manager: criar, listar, atualizar, excluir, vincular ou desvincular uma automação do Orchestrator, inspecionar resultados históricos e adicionar ou remover casos de teste de um conjunto de testes. Ele também fornece testcases run — uma maneira de executar um ou mais casos de teste diretamente de um pacote do Orchestrator. Esta página também documenta uip tm testcaselog list-assertions, que lê os artefatos de asserção anexados a um único log de caso de teste e os verbos testcaselog start / testcaselog finish usados por automações para registrar entradas de log manuais.

Um caso de teste é a unidade de autoria. Ele se torna executável assim que é vinculado a um ponto de entrada de pacote testcases link-automation. Um caso de teste pode então ser executado como parte de um conjunto de testes (consulte conjuntos de testes), ou diretamente por meio de testcases run.

Resumo

uip tm testcases create --project-key <key> --name <name> [--description <text>] [--precondition <text>] [--postcondition <text>]
uip tm testcases list --project-key <key> [--filter <text>] [--limit <n>] [--offset <n>]
uip tm testcases list-result-history --project-key <key> --test-case-id <uuid> [--limit <n>] [--offset <n>]
uip tm testcases update --project-key <key> --test-case-key <key> [--name <name>] [--description <text>] [--precondition <text>] [--postcondition <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> --automation-id <uuid>
uip tm testcases unlink-automation --project-key <key> --test-case-key <key>
uip tm testcases list-automations --folder-key <uuid> [--package-name <name>]
uip tm testcases list-testsets --project-key <key> --test-case-id <uuid>
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 testcaselog 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>] [--precondition <text>] [--postcondition <text>]
uip tm testcases list --project-key <key> [--filter <text>] [--limit <n>] [--offset <n>]
uip tm testcases list-result-history --project-key <key> --test-case-id <uuid> [--limit <n>] [--offset <n>]
uip tm testcases update --project-key <key> --test-case-key <key> [--name <name>] [--description <text>] [--precondition <text>] [--postcondition <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> --automation-id <uuid>
uip tm testcases unlink-automation --project-key <key> --test-case-key <key>
uip tm testcases list-automations --folder-key <uuid> [--package-name <name>]
uip tm testcases list-testsets --project-key <key> --test-case-id <uuid>
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 testcaselog 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>]

Todos os verbos honram as opções globais e os códigos de saída padrão. Cada verbo aceita -t, --tenant <name> e --log-level <level> (padrão Information).

Criação de casos de teste do uip tm

Crie um novo caso de teste dentro de um projeto.

Argumentos

Nenhum.

Opções

  • --project-key <key> (necessário) — possuindo projeto.
  • --name <name> necessário) — nome do caso de teste.
  • --description <text> descrição de forma livre. O padrão é vazio.
  • --precondition <text> — texto de pré-condição. O padrão é vazio.
  • --postcondition <text> — texto de pós-condição. O padrão é vazio.

Exemplo

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"

Formato dos dados

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

TestCaseKey (o identificador PROJECT:N público) é o que você passa para outros verbos. O Id interno (UUID) é necessário para list-result-history e list-testsets.

lista de casos de teste uip tm

Listar todos os casos de teste em um projeto.

Argumentos

Nenhum.

Opções

  • --project-key <key> (necessário) — projeto à lista.
  • --filter <text> filtre por nome ou chave (pesquisa no lado do servidor).
  • --limit <n> — tamanho da página. O padrão é 50.
  • --offset <n> — resultados a ignorar. O padrão é 0.

Exemplo

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

Formato dos dados

{
  "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 list-result-history

Liste os logs históricos de casos de teste para um único caso de teste. Usa o --test-case-id interno (UUID) — procure o UUID por meio de testcases list ou de uma saída TestCaseCreate anterior.

Argumentos

Nenhum.

Opções

  • --project-key <key> (necessário) — possuindo projeto.
  • --test-case-id <uuid> (necessário) — UUID do caso de teste interno.
  • --limit <n> — tamanho da página. O padrão é 50.
  • --offset <n> — resultados a ignorar. O padrão é 0.

Exemplo

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

Formato dos dados

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

atualização de casos de teste do uip tm

Renomeie um caso de teste ou altere sua descrição, pré-condição ou pós-condição. Pelo menos um desses campos deve ser fornecido.

Argumentos

Nenhum.

Opções

  • --project-key <key> (necessário) — possuindo projeto.
  • --test-case-key <key> (necessário) — chave de caso de teste (por exemplo, DEMO:1).
  • --name <name> novo nome.
  • --description <text> nova descrição.
  • --precondition <text> novo texto de pré-condição.
  • --postcondition <text> novo texto de pós-condição.

Exemplo

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

Formato dos dados

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

exclusão de casos de teste do uip tm

Excluir um caso de teste por sua chave.

Argumentos

Nenhum.

Opções

  • --project-key <key> (necessário) — possuindo projeto.
  • --test-case-key <key> (necessário) — chave de caso de teste (por exemplo, DEMO:1).
  • -y, --yes ignore o prompt de confirmação. Necessário em ambientes não interativos.

Exemplo

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

Formato dos dados

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

Associe uma automação do Orchestrator a um caso de teste por seu UUID de automação. É isso que torna o caso de teste executável dentro de um conjunto de testes. testcases list-automations para descobrir o --automation-id para uma determinada pasta.

Argumentos

Nenhum.

Opções

  • --project-key <key> (necessário) — possuindo projeto.
  • --test-case-key <key> necessário) — caso de teste a ser vinculado.
  • --automation-id <uuid> (necessário) — UUID da automação do Orchestrator (ponto de entrada do pacote). Obtenha isso de uip tm testcases list-automations.

Exemplo

uip tm testcases link-automation \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --automation-id f0f0f0f0-0000-0000-0000-000000000001
uip tm testcases link-automation \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --automation-id f0f0f0f0-0000-0000-0000-000000000001

Formato dos dados

{
  "Code": "TestCaseLinkAutomation",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "AutomationId": "f0f0f0f0-0000-0000-0000-000000000001",
    "Result": "Linked"
  }
}
{
  "Code": "TestCaseLinkAutomation",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "AutomationId": "f0f0f0f0-0000-0000-0000-000000000001",
    "Result": "Linked"
  }
}

Remova a associação de automação de um caso de teste. Após a desvinculação, o caso de teste não será mais executável até ser vinculado novamente.

Argumentos

Nenhum.

Opções

  • --project-key <key> (necessário) — possuindo projeto.
  • --test-case-key <key> (necessário) — caso de teste para desvincular.

Exemplo

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

Formato dos dados

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

uip tm testcases lista-automações

Liste os pontos de entrada de teste disponíveis em uma pasta do Orchestrator. Execute isso para descobrir o valor --automation-id a passar para link-automation.

Argumentos

Nenhum.

Opções

  • --folder-key <uuid> (necessário) — UUID da pasta do Orchestrator.
  • --package-name <name> filtre a lista para um pacote (correspondência exata sem diferenciação entre maiúsculas e minúsculas).

Exemplo

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

Formato dos dados

{
  "Code": "TestAutomationsList",
  "Data": [
    {
      "AutomationId": "f0f0f0f0-0000-0000-0000-000000000001",
      "PackageName": "InvoiceTests",
      "TestName": "SmokeTest",
      "PackageVersion": "1.0.2"
    }
  ]
}
{
  "Code": "TestAutomationsList",
  "Data": [
    {
      "AutomationId": "f0f0f0f0-0000-0000-0000-000000000001",
      "PackageName": "InvoiceTests",
      "TestName": "SmokeTest",
      "PackageVersion": "1.0.2"
    }
  ]
}

uip tm testcases list-testsets

Liste cada conjunto de testes que contém um determinado caso de teste.

Argumentos

Nenhum.

Opções

  • --project-key <key> (necessário) — possuindo projeto.
  • --test-case-id <uuid> (necessário) — UUID do caso de teste interno (não a chave PROJECT:N ). Obtenha-o de testcases list ou de uma resposta TestCaseCreate .

Exemplo

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

Formato dos dados

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

execução de casos de teste do uip tm

Execute um ou mais casos de teste diretamente de um pacote do Orchestrator, sem criar um conjunto de testes primeiro. testcases run uma execução e retorna o registro da execução. Para obter mais informações sobre esse recurso, consulte Execução de casos de teste sem um conjunto de testes na documentação do Test Manager.

Observação:

é testcases run por padrão — ele bloqueia até que o registro de execução seja confirmado. Para retornar imediatamente após a fila, passe --async. Para bloquear até que a execução termine, canalize o Id retornado para uip tm wait.

Quando usar testcases run vs testsets run

  • testcases run para executar casos de teste sob demanda diretamente de um pacote.
  • testsets run para executar um grupo nomeado e selecionado de casos de teste que são gerenciados ao longo do tempo no Test Manager.

Argumentos

Nenhum.

Opções

  • --project-key <key> — Test Manager chave do projeto (por exemplo, DEMO). Opcional se puder ser derivados do contexto.
  • --test-case-id <uuid...> (necessário) — um ou mais UUIDs de casos de teste para executar, separados por espaço. Obter UUIDs de testcases list.
  • --execution-type <type> (necessário) — tipo de execução: automated, manual, mixed ou none.
  • --name <name> nome de exibição para a execução.
  • --async retornam imediatamente após a fila, sem esperar o servidor confirmar que a execução começou. Omita para aguardar a criação total do registro de execução antes de retornar.
  • --folder-key <uuid> — a pasta do Orchestrator a ser executada. Obrigatório quando os casos de teste são vinculados a automações em uma pasta específica.
  • --runtime-type <type> — substituição do tipo de runtime do robô. Valores aceitos: 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> chave de usuário do robô para o destino de execução.
  • --machine-key <uuid> chave de máquina para o destino de execução.
  • --host-machine-name <name> nome da máquina do host para o destino de execução.
  • --service-user-name <name> — nome de usuário de serviço para o destino de execução.
  • — Matriz [{"packageName":"Pkg","version":"1.0.0"}] --test-set-packages <json>

Exemplos

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

Formato dos dados

{
  "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-chave:

  • Id — passe para uip tm wait, report get, result download, attachment download.
  • Status: "Running" a execução pode ainda não ter sido enviada.
  • Source: "Manual" todas as execuções testcases run são marcadas como disparadas manualmente.

Fluxo de trabalho de ponta a ponta: empacotar para 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. 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)

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

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

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

# 8. 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. 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)

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

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

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

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

Adicionar casos de teste uip tm

Adicione um ou mais casos de teste a um conjunto de testes existente.

Argumentos

Nenhum.

Opções

  • --test-set-key <key> necessário) — chave do objeto do conjunto de testes (por exemplo, DEMO:42).
  • --test-case-keys <keys> (necessário) — chaves de caso de teste separadas por vírgulas a serem adicionadas (por exemplo, DEMO:1,DEMO:2).

Exemplo

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

Formato dos dados

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

remoção de casos de teste uip tm

Remova um ou mais casos de teste de um conjunto de testes.

Argumentos

Nenhum.

Opções

  • --test-set-key <key> necessário) — chave do objeto do conjunto de testes (por exemplo, DEMO:42).
  • --test-case-keys <keys> (necessário) — chaves de caso de teste separadas por vírgulas a serem removidas (por exemplo, DEMO:1,DEMO:2).
  • -y, --yes ignore o prompt de confirmação. Necessário em ambientes não interativos.

Exemplo

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

Formato dos dados

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

uip tm testcases list-steps

Listar as etapas de teste manuais de um caso de teste. Este é um alias para testcases steps list.

Argumentos

Nenhum.

Opções

  • --project-key <key> (necessário) — possuindo projeto.
  • --test-case-id <uuid> (necessário) — UUID do caso de teste interno.

Exemplo

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

Formato dos dados

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

etapas de testcases do uip tm

é um testcases steps que gerencia as etapas manuais individuais de um caso de teste: listar, obter, adicionar, atualizar, mover e excluir.

lista de etapas de casos de teste do uip tm

Liste as etapas de um caso de teste em ordem.

Argumentos

Nenhum.

Opções
  • --project-key <key> (necessário) — possuindo projeto.
  • --test-case-id <uuid> (necessário) — UUID do caso de teste interno.
Exemplo
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
Formato dos dados
{
  "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"
    }
  ]
}

etapas de testcases do uip tm obter

Obtém uma única etapa pelo UUID.

Argumentos

Nenhum.

Opções
  • --project-key <key> (necessário) — possuindo projeto.
  • --step-id <uuid> (necessário) — UUID da etapa de teste (de steps list).
Exemplo
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
Formato dos dados
{
  "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"
  }
}

etapas de testcases do uip tm adicionar

Adicione uma ou mais etapas a um caso de teste. Use sinalizadores em linha para uma única etapa ou --step <json> (repetível) para várias de uma vez.

Argumentos

Nenhum.

Opções
  • --project-key <key> (necessário) — possuindo projeto.
  • --test-case-id <uuid> necessário) — caso de teste ao qual adicionar etapas.
  • --description <text> — descrição da etapa (modo de etapa única).
  • --expected-result <text> — resultado esperado (modo de etapa única).
  • --action-type <type> — tipo de ação de etapa (modo de etapa única).
  • --clipboard-data <text> — dados de teste a serem copiados para a etapa (modo de etapa única).
  • --order-no <n> Posição de inserção baseada em 0; omita para anexar no final (modo de etapa única).
  • --step <json> uma etapa como um objeto JSON ({"description":"...","expectedResult":"..."}). Repita o processo para adicionar várias etapas.
Exemplos
# 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"}'
Formato dos dados
{
  "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"
    }
  ]
}

Atualização de etapas de testcases do uip tm

Atualize a descrição de uma etapa, o resultado esperado, o tipo de ação ou os dados da área de transferência. Pelo menos um desses campos deve ser fornecido.

Argumentos

Nenhum.

Opções
  • --project-key <key> (necessário) — possuindo projeto.
  • --step-id <uuid> (necessário) — UUID da etapa de teste.
  • --description <text> nova descrição.
  • --expected-result <text> novo resultado esperado.
  • --action-type <type> novo tipo de ação.
  • --clipboard-data <text> novos dados da área de transferência.
Exemplo
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"
Formato dos dados
{
  "Code": "TestStepUpdate",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Updated"
  }
}
{
  "Code": "TestStepUpdate",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Updated"
  }
}

etapas de Testcases do uip tm mover

Mova uma etapa para uma nova posição na ordem do caso de teste.

Argumentos

Nenhum.

Opções
  • --project-key <key> (necessário) — possuindo projeto.
  • --step-id <uuid> (necessário) — UUID da etapa de teste.
  • --target-position <n> necessário) — nova posição baseada em 0 (0 = primeira). Corresponde ao campo OrderNo de steps list.
Exemplo
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
Formato dos dados
{
  "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"
  }
}

exclusão de etapas de testcases do uip tm

Excluir uma etapa de um caso de teste. Isso é permanente.

Argumentos

Nenhum.

Opções
  • --project-key <key> (necessário) — possuindo projeto.
  • --step-id <uuid> (necessário) — UUID da etapa de teste.
  • -y, --yes ignore o prompt de confirmação. Necessário em ambientes não interativos.
Exemplo
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
Formato dos dados
{
  "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

Liste as asserções gravadas para um único log de caso de teste. Cada execução de um caso de teste produz exatamente um log de caso de teste; suas asserções são as verificações individuais que a automação registrou. Esse verbo revela por que um log de caso de teste é Failed.

Esse verbo está registrado em testcaselog, não em testcases, mas está documentado aqui porque ele lê artefatos de asserção para o log de um caso de teste.

Argumentos

Nenhum.

Opções

  • --test-case-log-id <uuid> (necessário) — UUID do log do caso de teste. Obtenha-o de uip tm executions testcaselogs list ou uip tm testcases list-result-history.
  • --project-key <key> (necessário) — possuindo projeto.

Exemplo

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

Formato dos dados

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

Início do log de caso de teste do uip tm

Sinalize o início de uma entrada de log de caso de teste manual para um caso de teste específico dentro de uma execução.

Argumentos

Nenhum.

Opções

  • --execution-id <uuid> necessário) — a execução na qual o caso de teste está sendo executado.
  • --test-case-id <uuid> exigido) — UUID interno do caso de teste que está sendo registrado.
  • --execution-type <type> — tipo de execução para a entrada de log (por exemplo, automated, manual). Opcional.

Exemplo

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

Formato dos dados

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

Finalização do log de caso de teste do uip tm

Sinaliza o fim de uma entrada de log de caso de teste iniciada manualmente.

Argumentos

Nenhum.

Opções

  • --test-case-log-id <uuid> (necessário) — o ID de log retornado por testcaselog start.
  • --info <text> erro opcional ou mensagem informativa a ser anexada à entrada de log.

Exemplo

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"

Formato dos dados

{
  "Code": "TestCaseLogFinish",
  "Data": {
    "TestCaseLogId": "c3d4e5f6-0000-0000-0000-000000000001",
    "Result": "Finished"
  }
}
{
  "Code": "TestCaseLogFinish",
  "Data": {
    "TestCaseLogId": "c3d4e5f6-0000-0000-0000-000000000001",
    "Result": "Finished"
  }
}
  • projeto — escopo que possui cada caso de teste.
  • testessets — agrupe casos de teste em um pacote executável.
  • execuções — visualizações no nível da execução de logs de casos de teste.
  • relatório — resumo de uma execução, com casos de falha e texto de asserção.

Veja também

Esta página foi útil?

Conectar

Precisa de ajuda? Suporte

Quer aprender? Academia UiPath

Tem perguntas? Fórum do UiPath

Fique por dentro das novidades