- Visão geral
- UiPath CLI
- Sobre o UiPath CLI
- Baixando o UiPath CLI
- Matriz de compatibilidade
- Executando o UiPath CLI
- Gerenciando feeds do NuGet
- Suporte do Test Manager
- Empacotando projetos em um pacote
- Assinatura de pacotes de projetos
- Análise de um projeto
- Implantação de um pacote no Orchestrator
- Executando um trabalho dentro do Orchestrator
- Teste de um pacote ou execução de um conjunto de testes
- Teste de vários pacotes
- Implantação de ativos no Orchestrator
- Exclusão de ativos do Orchestrator
- Executando tarefas usando a configuração JSON
- Restaurando dependências de automação
- Solução de problemas do UiPath CLI
- Extensão do Azure DevOps
- Plug-in do Jenkins

Guia do usuário de integrações de CI/CD
Testando um pacote ou executando um conjunto de testes no Test Manager
Testando um pacote ou executando um conjunto de testes no Test Manager
Pré-requisitos
-
Use a versão mais recente do Test Manager (Test Manager 2.2510 ou superior para entrega do Automation Suite ou Test Manager 25.10 ou superior para instalação independente).
-
Se você estiver fazendo referência a um conjunto de testes existente do Orchestrator, importe o conjunto de testes para o Test Manager. Para obter mais informações, consulte Test Manager - Importação de conjuntos de testes do Orchestrator. Obtenha a chave do conjunto de testes após a importação.
-
Crie um projeto no Test Manager e obtenha a chave do projeto. Obtenha a chave do projeto no Test Manager > Todos os projetos > Ir para o menu de três pontos do projeto > Editar > Prefixo.
-
Criar um pacote ou um conjunto de testes com casos de teste automatizados. Obtenha a testset-key na aba Test Manager > Conjuntos de testes > coluna Chave.
-
Obtenha o IdDoCliente e SegredoDoCliente. Para obter mais informações sobre como obter o IdDoCliente e o SegredoDoCliente, consulte a seção Registrar um aplicativo externo das integrações de CI/CD o tópico Execução de tarefas do UiPath CLI .
-
Execute o arquivo uipcli.dll para Windows/Linux/macOS.
-
Adicione os escopos de aplicativos necessários para o acesso à API do Test Manager. Para obter mais informações sobre os escopos do Test Manager, consulte o tópico Integrações de CI/CD - Execução de tarefas do UiPath CLI .
Usando o Test Manager com CLI
Para testar um pacote usando o Test Manager, siga as seguintes etapas: execute a tarefa de teste, usando o uipcli test. Você pode ver uma lista de subtarefas disponíveis. Especifique os parâmetros necessários e selecione a subtarefa de execução.
Para usar o Test Manager em vez do teste do Orchestrator, especifique o parâmetro --projectKey no comando test run . A CLI executará automaticamente seus testes por meio do Test Manager.
Parâmetros do comando de teste
| Parâmetro | Description | Required |
|---|---|---|
Orchestrator URL (pos. 0) | O URL da instância do Orchestrator. | Sim |
Orchestrator Tenant (pos. 1) | O tenant dentro do qual o pacote ou Conjunto de Testes estão | Necessário para implantações do SaaS, Opcional para implantações do PaaS |
-P, --project-path | O caminho para o arquivo do pacote de testes que você deseja testar | Não |
--projectKey | A chave do projeto exibida em Test Manager > Todos os projetos > Ir para o menu de três pontos do projeto > Editar > Prefixo. A chave do projeto é o prefixo para todas as chaves de objeto. | Sim (para o Test Manager) |
--testsetkey | A chave do conjunto de testes exibida na guia Test Manager Test Manager > conjuntos de testes > coluna Chave. Certifique-se de que o Conjunto de teste inclua a versão mais recente dos Casos de teste. | Não |
-s, --testset | Esse parâmetro deve ser usado apenas no fluxo do Orchestrator. O nome mostrado para o Conjunto de teste que você deseja executar. Certifique-se de que o Conjunto de teste inclua a versão mais recente dos Casos de teste. Se o Conjunto de teste não estiver na pasta padrão, certifique-se de incluir o nome da pasta relevante antes dele. Por exemplo, use AccountingTeam\TestSet. | Não |
--out | O tipo do arquivo de resultado (junit ou uipath) | Não |
-r, --result_path | O caminho de destino do arquivo em que você deseja armazenar os resultados | Não |
-e, --environment | O ambiente em que você deseja implantar o pacote. Você deve combiná-lo com o project path | Necessário para pastas clássicas |
-w, --timeout | O tempo (em segundos) que você quer esperar para o Conjunto de teste ser executado. O valor padrão é 7200 segundos | Não |
-i, --input_path | O caminho completo para um arquivo de entrada JSON. Consulte Formato JSON dos Parâmetros de Entrada para obter detalhes sobre a estrutura do arquivo. | Obrigatório se o fluxo de trabalho do entry-point tiver parâmetros de entrada |
--attachRobotLogs | Anexa logs do robô para cada caso de teste executado e um relatório de teste JUnit. | Não |
--repositoryUrl | A URL do repositório onde o projeto é versionado | Não |
--repositoryCommit | A confirmação do repositório de onde o projeto foi criado | Não |
--repositoryBranch | A ramificação do repositório a partir da qual o projeto foi criado | Não |
--repositoryType | Tipo de repositório do sistema VCS | Não |
--projectUrl | Ideias para o Automation Hub | Não |
--releaseNotes | Adicionar Notas de Versão | Não |
--nugetConfigFilePath | Caminho para o arquivo NuGet.Config que contém os feeds. A tag <clear /> do arquivo especificado será ignorada e apenas as origens serão consideradas. | Não |
--disableBuiltInNugetFeeds | Desabilitar feeds integrados do NuGet | Não |
--retryCount | Número de novas tentativas para casos de teste com falha (por padrão, nenhuma nova tentativa é definida) | Não |
-u, --username | O nome de usuário usado para autenticação ao Orchestrator. Você deve combiná-lo com a senha correspondente | Obrigatório para autenticação básica |
-p, --password | A senha usada para autenticação ao Orchestrator. Você deve combiná-lo com o nome de usuário correspondente | Obrigatório para autenticação básica |
-t, --token | O token de atualização do OAuth2 usado para autenticação ao Orchestrator. Você deve combiná-lo com o Nome da Conta e o ID do Cliente | Necessário para a autenticação baseada em token |
-a, --accountName | O nome da conta CloudRPA do Orchestrator. Você deve combiná-lo com o token de atualização do OAuth2 e o ID do cliente | Necessário para a autenticação baseada em token |
-A, --accountForApp | O nome da conta CloudRPA do Orchestrator (nome da organização). Você deve combiná-lo com a ID do aplicativo, Segredo do aplicativo e Escopo do aplicativo para um aplicativo externo | Não |
-I, --applicationId | A ID do aplicativo externo. Você deve combiná-lo com a Conta do aplicativo, Segredo do aplicativo e Escopo do aplicativo | Necessário para autenticação de aplicativo externo |
-S, --applicationSecret | O Segredo do aplicativo externo. Você deve combiná-lo com a Conta do aplicativo, ID do aplicativo e Escopo de aplicativo | Necessário para autenticação de aplicativo externo |
--applicationScope | A lista de escopos do aplicativo, separada por espaços únicos. Você deve combiná-lo com a Conta do aplicativo, ID do aplicativo e Segredo do aplicativo para um aplicativo externo | Opcional para autenticação de aplicativos externos. Usando escopos padrão se não for especificado o contrário |
-o, --organizationUnit | A pasta do Orchestrator onde você deseja executar os conjuntos de teste | Não |
--author | O autor do pacote. | Não |
-l, --language | O idioma usado na interface do usuário do Orchestrator | Não |
--traceLevel | Exibir o trace dos eventos | Não |
--identityURL | A URL do seu Identity Server | Necessário para implantações PaaS ou MSI |
Ao usar a autenticação de aplicativos externos sem especificar o parâmetro --applicationScope , a CLI aplica automaticamente esses escopos padrão do Test Manager:
TM.Projects TM.TestSets TM.TestExecutions
Além dos escopos OR padrão:
OR.Assets OR.BackgroundTasks OR.Execution OR.Folders OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read
Exemplos de uso
Execute um conjunto de testes existente no Test Manager:
# Windows
uipcli test run "https://cloud.uipath.com/" "TenantName" `
--projectKey "MyTestProject" `
--testsetkey "MyTestSet" `
-A "organizationName" `
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" `
-S '********' `
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" `
-o "FolderName" `
--out "junit" `
--result_path "C:\TestResults"
--author ExampleAuthor
# Linux/macOS
uipcli test run "https://cloud.uipath.com/" "TenantName" \
--projectKey "MyTestProject" \
--testsetkey "MyTestSet" \
-A "organizationName" \
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
-S '********' \
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" \
-o "FolderName" \
--out "junit" \
--result_path "./test-results"
--author ExampleAuthor
# Windows
uipcli test run "https://cloud.uipath.com/" "TenantName" `
--projectKey "MyTestProject" `
--testsetkey "MyTestSet" `
-A "organizationName" `
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" `
-S '********' `
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" `
-o "FolderName" `
--out "junit" `
--result_path "C:\TestResults"
--author ExampleAuthor
# Linux/macOS
uipcli test run "https://cloud.uipath.com/" "TenantName" \
--projectKey "MyTestProject" \
--testsetkey "MyTestSet" \
-A "organizationName" \
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
-S '********' \
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" \
-o "FolderName" \
--out "junit" \
--result_path "./test-results"
--author ExampleAuthor
Crie e execute um conjunto de testes temporário a partir de um projeto:
Conjuntos de testes temporários são conjuntos de testes temporários criados instantaneamente a partir do caminho do seu projeto.
uipcli test run "https://cloud.uipath.com/" "TenantName" \
--projectKey "MyTestProject" \
-P "./MyTestProject/project.json" \
-e "TestEnvironment" \
-A "organizationName" \
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
-S '********' \
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" \
-o "FolderName" \
--out "uipath" \
--result_path "./test-results"
uipcli test run "https://cloud.uipath.com/" "TenantName" \
--projectKey "MyTestProject" \
-P "./MyTestProject/project.json" \
-e "TestEnvironment" \
-A "organizationName" \
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
-S '********' \
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" \
-o "FolderName" \
--out "uipath" \
--result_path "./test-results"
Executar testes com substituições de parâmetros:
uipcli test run "https://cloud.uipath.com/" "TenantName" \
--projectKey "MyTestProject" \
--testsetkey "MyTestSet" \
-i "./test-parameters.json" \
-A "organizationName" \
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
-S '********' \
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" \
-o "FolderName" \
--out "junit" \
--result_path "./test-results"
uipcli test run "https://cloud.uipath.com/" "TenantName" \
--projectKey "MyTestProject" \
--testsetkey "MyTestSet" \
-i "./test-parameters.json" \
-A "organizationName" \
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
-S '********' \
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" \
-o "FolderName" \
--out "junit" \
--result_path "./test-results"
Execute testes com anexo de logs do robô:
uipcli test run "https://cloud.uipath.com/" "TenantName" \
--projectKey "MyTestProject" \
--testsetkey "MyTestSet" \
--attachRobotLogs true \
-A "organizationName" \
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
-S '********' \
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" \
-o "FolderName" \
--out "junit" \
--result_path "./test-results"
uipcli test run "https://cloud.uipath.com/" "TenantName" \
--projectKey "MyTestProject" \
--testsetkey "MyTestSet" \
--attachRobotLogs true \
-A "organizationName" \
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
-S '********' \
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" \
-o "FolderName" \
--out "junit" \
--result_path "./test-results"
Tipos de relatório
O Test Manager é compatível com dois formatos de saída:
| Format | Description | Caso de uso |
|---|---|---|
junit | Formato XML JUnit | Integração de CI/CD (Jenkins, Azure DevOps, GitHub Actions) |
uipath | Formato nativo do UiPath | Relatórios detalhados de execução com dados específicos do Test Manager |
Migração de testes do Orchestrator
Antes (testes do Orchestrator):
uipcli test run "https://cloud.uipath.com/" "TenantName" \
-s "MyTestSet" \
-u "username" \
-p "password" \
-o "FolderName" \
-P "./project.json"
uipcli test run "https://cloud.uipath.com/" "TenantName" \
-s "MyTestSet" \
-u "username" \
-p "password" \
-o "FolderName" \
-P "./project.json"
Depois (Test Manager):
uipcli test run "https://cloud.uipath.com/" "TenantName" \
--projectKey "MyTestProject" \
--testsetkey "MyTestSet" \
-A "organizationName" \
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
-S '********' \
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" \
-o "FolderName" \
--out "junit" \
--result_path "./results"
uipcli test run "https://cloud.uipath.com/" "TenantName" \
--projectKey "MyTestProject" \
--testsetkey "MyTestSet" \
-A "organizationName" \
-I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
-S '********' \
--applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions" \
-o "FolderName" \
--out "junit" \
--result_path "./results"
Diferenças principais:
- Adicione o parâmetro
--projectKeypara habilitar o Test Manager - Use
--testsetkeyao invés de-spara a identificação de conjuntos de testes - O Test Manager requer autenticação do OAuth (credenciais do aplicativo)
- Especifique o formato de saída com
--oute o destino com--result_path
Melhores práticas
Configuração do Test Manager:
- Crie projetos dedicados do Test Manager para diferentes aplicativos ou equipes
- Use chaves de projeto e chaves de conjunto de teste significativas para facilitar a identificação
- Organizar conjuntos de testes por finalidade (regressão, smoke, integração etc.)
Gerenciamento de parâmetros:
- Use arquivos de parâmetro (
-i) para configurações específicas do ambiente - Armazene parâmetros confidenciais em segredos de CI/CD, não em arquivos de parâmetros
- Documente os parâmetros necessários nas suas descrições de conjuntos de testes
Lógica de nova tentativa:
- Use
--retryCountpara testes irregulares que podem falhar de forma intermitente - Defina os valores
--timeoutapropriados com base na duração do teste - Monitore padrões de repetição para identificar e corrigir testes instáveis
Reportando:
- Use o formato
junitpara a integração do pipeline de CI/CD - Use o formato
uipathpara uma análise detalhada no Test Manager - Habilite
--attachRobotLogspara depurar falhas no teste
Integração de CI/CD:
- Configure a autenticação do Test Manager usando variáveis de ambiente seguras
- Configurar a execução de teste automatizada em confirmações de código ou solicitações de pull
- Arquive relatórios de teste como artefatos de compilação para rastreamento histórico