Test Suite
2022.4
falso
Imagem de fundo do banner
Guia do usuário do Test Suite
Última atualização 28 de fev de 2024

Plug-in do Jenkins

Esse plug-in permite criar e implantar processos de automação da UiPath, bem como executar casos de teste automatizados do UiPath.

Para empacotar projetos criados com o UiPath Studio a partir da versão 2020.10, você precisa usar a versão 2.1 ou superior dessa extensão.

Pré-requisitos

  • Servidor Jenkins em execução no Windows ou Linux.
  • Pelo menos um escravo Jenkins em execução no Windows (necessário para a execução da etapa).
  • Instância do Orchestrator (autenticações básica, federada ou em nuvem são compatíveis).

    • Os recursos de teste exigem o Orchestrator na versão 2020.4 ou superior.
    • Ao usar um On-Premise Orchestrator em HTTPS, certifique-se de importar o certificado SSL para que as chamadas HTTPS para o Orchestrator possam ser confiáveis.

Instalação e habilitação do plug-in

O plug-in do Jenkins pode ser instalado a partir de qualquer instalação do Jenkins conectada à Internet usando a tela Gerenciador de plug-ins.

Trabalhos

UiPath Run Job

A etapa pós-criação do UiPath Run Job inicia um processo que já estava implantado em uma instância do Orchestrator. Na versão 2020.10 do Orchestrator, você pode encontrar os processos que estão sendo executados por essa tarefa na guia Processos. Nas versões 2021.10 e superiores do Orchestrator, você pode encontrar os processos que estão sendo executados por essa tarefa em Automações, em Processos.



Configuração

Parâmetro do trabalho

Description

Processo (obrigatório)

Nome do processo. Você pode obter o nome do processo na interface do usuário do orquestrador.

Se o processo for implantado em uma pasta Moderna, esse argumento deverá ser o Nome do processo na guia Processos . Se o processo for implantado em uma pasta Classic, o argumento deve ser formado pelo Nome do processo e pelo Ambiente (por exemplo: NAME: ProcessA ENVIRONMENT: Production ProcessName: ProcessA_Production).

Parâmetros

O caminho completo para um arquivo de entrada JSON. Isso é usado quando o processo requer entrada.

Prioridade

A prioridade da execução do trabalho.

Strategy

Especifique a estratégia de execução de trabalhos: trabalhos(s) alocado(s) dinamicamente ou trabalho(s) específico(s) de Robots. Escolha uma das seguintes opções:

  • Alocar de forma dinâmica
  • Robôs específicos

Tipo de trabalho (disponível apenas para pastas Modernas)

Escolha o modelo de licença do tempo de execução em que o trabalho será executado.

Endereço do Orchestrator

O endereço da instância do Orchestrator onde você executará o processo.

Tenant do Orchestrator

Especifique o locatário do orquestrador.

Pasta do Orchestrator

Especifique a pasta onde o processo especificado foi implantado.
Para inserir subpastas, certifique-se de inserir o nome da pasta pai e o nome da subpasta. Por exemplo, use AccountingTeam\TeamJohn.

Autenticação

Para autenticação no Orchestrator, você precisa criar credenciais no Jenkins antecipadamente. Existem quatro opções para autenticar:

(1) Autenticar em um Orchestrator local usando nome de usuário e senha.

(2) Autenticar em um Cloud Orchestrator usando um token de atualização (chave de API).

(3) Autentique-se em um Cloud Orchestrator usando autenticação de aplicativo externo.

(4) Autenticar em um Orchestrator local usando autenticação de aplicativo externoautenticação de aplicativo externo.

Caminho de saída dos resultados do trabalho

Especifique o caminho de saída dos resultados da tarefa (por exemplo, testResults.json). Os resultados são gerados no formato JSON.
Se não for especificado, os resultados são enviados Para o diretório de teste de artefatos como UiPathResults.json. A saída está no formato JSON.

Tempo limite

Especifique o tempo limite da(s) execução(ões) de trabalho em segundos.

Falha quando um trabalho falha

A tarefa será marcada como "com falha" se pelo menos um trabalho falhar. O valor padrão é True.

Aguarde a conclusão do trabalho

Aguarde a conclusão da(s) execução(ões) do trabalho. O valor padrão é True.

Nível de registro em log do trace

Configuração usada para habilitar o registro de rastreamento em um dos seguintes níveis:

  • Nenhum
  • Crítica
  • Erro
  • Aviso
  • Information
  • Prolixo. (O padrão é definido como Nenhum).

    Útil para fins de depuração.

Número de trabalhos

O número de execuções de trabalhos. O valor padrão é 1.

Usuário (disponível apenas para pastas modernas)

O nome do usuário. Deve ser um usuário de máquina, não um usuário do Orchestrator.

Para usuários locais, o formato deve ser MachineName\UserName.

Máquina (disponível apenas para pastas modernas)

O nome da máquina.

Nomes de robô

Lista de nomes de robôs específicos, separados por vírgula.

Exemplo de pipeline

pipeline {
  agent any
  environment {
      MAJOR = '1'
      MINOR = '0'
  }
  stages {
    stage ('Build') {
        UiPathRunJob(
          credentials: UserPass('825c83c9-9a14-44eb-883a-af54f8078af0'),
          failWhenJobFails: true,
          folderName: 'A_Classic',
          orchestratorAddress: 'https://testorchestrator.some-domain.com',
          orchestratorTenant: 'Default',
          parametersFilePath: '',
          priority: 'Low',
          processName: 'ProcessA_EnvB',
          resultFilePath: 'output.json',
          strategy: Dynamically(jobsCount: 1, machine: 'TestMachine', user: 'TestUser'), timeout: 3600, waitForJobCompletion: true, traceLoggingLevel: 'None'
        )
        UiPathRunJob(
          credentials: UserPass('825c83c9-9a14-44eb-883a-af54f8078af0'),
          failWhenJobFails: true,
          folderName: 'A_Classic',
          orchestratorAddress: 'https://testorchestrator.some-domain.com',
          orchestratorTenant: 'Default',
          parametersFilePath: '',
          priority: 'Low',
          processName: 'ProcessA_EnvB',
          resultFilePath: 'output.json',
          strategy: Robot('robot1,robot2'),
          timeout: 1800,
          waitForJobCompletion: false,
          traceLoggingLevel: 'None'
        )
    }
  }
}pipeline {
  agent any
  environment {
      MAJOR = '1'
      MINOR = '0'
  }
  stages {
    stage ('Build') {
        UiPathRunJob(
          credentials: UserPass('825c83c9-9a14-44eb-883a-af54f8078af0'),
          failWhenJobFails: true,
          folderName: 'A_Classic',
          orchestratorAddress: 'https://testorchestrator.some-domain.com',
          orchestratorTenant: 'Default',
          parametersFilePath: '',
          priority: 'Low',
          processName: 'ProcessA_EnvB',
          resultFilePath: 'output.json',
          strategy: Dynamically(jobsCount: 1, machine: 'TestMachine', user: 'TestUser'), timeout: 3600, waitForJobCompletion: true, traceLoggingLevel: 'None'
        )
        UiPathRunJob(
          credentials: UserPass('825c83c9-9a14-44eb-883a-af54f8078af0'),
          failWhenJobFails: true,
          folderName: 'A_Classic',
          orchestratorAddress: 'https://testorchestrator.some-domain.com',
          orchestratorTenant: 'Default',
          parametersFilePath: '',
          priority: 'Low',
          processName: 'ProcessA_EnvB',
          resultFilePath: 'output.json',
          strategy: Robot('robot1,robot2'),
          timeout: 1800,
          waitForJobCompletion: false,
          traceLoggingLevel: 'None'
        )
    }
  }
}

UiPath Manage Assets

A etapa UiPath Manage Assets permite implantar, atualizar ou excluir ativos em uma instância do Orchestrator. Para implantar recursos, você deve descrevê-los em um arquivo CSV como o do exemplo abaixo codificado em uft-8.
name,type,value,description
asset_1_name,text,asset_value,this is an test description   # we can have comments
asset_2_name,integer,123
asset_3_name,boolean,false
asset_4_name,credential,"username::password"name,type,value,description
asset_1_name,text,asset_value,this is an test description   # we can have comments
asset_2_name,integer,123
asset_3_name,boolean,false
asset_4_name,credential,"username::password"

Há quatro tipos de ativos:

  • Texto
  • Número inteiro
  • Booleano
  • Credential. Para Credential, você deve codificar o nome de usuário e a senha usando :: para separar os dois campos.


Configuração

Parâmetro do trabalho

Description

Ação

O que fazer com os recursos fornecidos: implantar ou excluir. Se existir um recurso implantado, ele será atualizado.

Endereço do Orchestrator

O endereço da instância do Orchestrator onde você implantará ou atualizará ativos.

Tenant do Orchestrator

Especifique o tenant do Orchestrator no qual os ativos serão implantados ou atualizados.

Pasta do Orchestrator

Especifique a pasta onde os ativos serão implantados ou atualizados.

Para inserir subpastas, certifique-se de inserir o nome da pasta pai e o nome da subpasta. Por exemplo, use AccountingTeam\TeamJohn.

Autenticação

Para autenticação no Orchestrator, você precisa criar credenciais no Jenkins antecipadamente. Existem quatro opções para autenticar:

(1) Autenticar em um Orchestrator local usando nome de usuário e senha.

(2) Autenticar em um Cloud Orchestrator usando um token de atualização (chave de API).

(3) Autentique-se em um Cloud Orchestrator usando autenticação de aplicativo externo.

(4) Autenticar em um Orchestrator local usando autenticação de aplicativo externoautenticação de aplicativo externo.

Caminho do arquivo CSV

O caminho para o arquivo CSV que contém os detalhes do ativo. O mesmo arquivo pode ser usado para implantar ou atualizar os ativos, embora o tipo não seja necessário para atualizações.

O campo type também pode estar vazio, mas a coluna deve estar presente. Para excluir, apenas a coluna name é usada, portanto as outras colunas podem estar vazias, mas devem estar presentes.
Você pode definir uma descrição opcional para cada recurso (por exemplo: type, value, description). Certifique-se de remover todas as quebras de linha, pois cada linha é interpretada como um novo ativo.

Nível de registro em log do trace

Configuração usada para habilitar o registro de rastreamento em um dos seguintes níveis:

  • Nenhum
  • Crítica
  • Erro
  • Aviso
  • Information
  • Prolixo. (O padrão é definido como Nenhum).

    Útil para fins de depuração.

Exemplo de pipeline

pipeline {
  agent any
  environment {
      MAJOR = '1'
      MINOR = '0'
  }
  stages {
    stage ('Build') {
        UiPathAssets (
            assetsAction: DeployAssets(), 
            credentials: Token(accountName: '', credentialsId: ''), 
            filePath: '${WORKSPACE}/test.csv', 
            folderName: 'Default', 
            orchestratorAddress: 'https://test-orchestrator.somedomain.com', 
            orchestratorTenant: 'Default',
            traceLoggingLevel: 'None'
        )
        UiPathAssets(
            assetsAction: DeleteAssets(),
            credentials: UserPass('825c83c9-9a14-44eb-883a-af54f8078af0'),
            filePath: '${WORKSPACE}/test.csv',
            folderName: 'Default',
            orchestratorAddress: 'https://test-orchestrator.somedomain.com',
            orchestratorTenant: 'Default',
            traceLoggingLevel: 'None'
        )
    }
  }
}pipeline {
  agent any
  environment {
      MAJOR = '1'
      MINOR = '0'
  }
  stages {
    stage ('Build') {
        UiPathAssets (
            assetsAction: DeployAssets(), 
            credentials: Token(accountName: '', credentialsId: ''), 
            filePath: '${WORKSPACE}/test.csv', 
            folderName: 'Default', 
            orchestratorAddress: 'https://test-orchestrator.somedomain.com', 
            orchestratorTenant: 'Default',
            traceLoggingLevel: 'None'
        )
        UiPathAssets(
            assetsAction: DeleteAssets(),
            credentials: UserPass('825c83c9-9a14-44eb-883a-af54f8078af0'),
            filePath: '${WORKSPACE}/test.csv',
            folderName: 'Default',
            orchestratorAddress: 'https://test-orchestrator.somedomain.com',
            orchestratorTenant: 'Default',
            traceLoggingLevel: 'None'
        )
    }
  }
}

UiPath Pack

Aplicação: RPA

Tipo: tarefa de construção

O UiPath Pack está disponível em trabalhos e pipelines padrão e permite empacotar um projeto UiPath existente em um pacote NuGet.



Configuração

Parâmetro do trabalho

Description

Escolha o método de controle de versão

Os pacotes UiPath são versionados. Com o pacote UiPath você pode escolher entre 3 opções diferentes:

(1) Geração automática

(2) Definir versão personalizada

(3) Use a versão atual definida no projeto.

Caminho do(s) projeto(s)

A localização do(s) projeto(s) a ser(em) empacotado(s). Pode ser um caminho direto para um arquivo project.json ou um diretório com um ou mais projetos. Nesse último caso, cada projeto de nível um é empacotado individualmente.

OutputFolder

Caminho para uma pasta onde você deseja criar o pacote.

Tipo de saída

O tipo de saída do(s) projeto(s). Existem 5 opções para o(s) tipo(s) de projeto:

(1) Tipo de saída do projeto

(2) Embalar um projeto de processo

(3) Embalar um projeto de biblioteca

(4) Embalar um projeto de testes

(5) Embalar um projeto de objetos.

Executar análise do fluxo de trabalho

Execute a análise do fluxo de trabalho antes de empacotar, verificando o projeto por meio de regras predefinidas quanto a violações. Falhe o trabalho em caso de erros. Por padrão, a análise não é executada.

Nível de registro em log do trace

Configuração usada para habilitar o registro de rastreamento em um dos seguintes níveis:

  • Nenhum
  • Crítica
  • Erro
  • Aviso
  • Information
  • Prolixo. (O padrão é definido como Nenhum).

    Útil para fins de depuração.

Usar orquestrador

Use o feed do Orchestrator ao empacotar bibliotecas. A versão do Orchestrator deve igual ou superior à 20.4. O feed da biblioteca precisa permitir a autenticação de chave de API em Tenant > Configuração > Implantação.

Endereço do Orchestrator

Especifique o endereço da instância do Orchestrator a partir do qual as dependências da biblioteca devem ser restauradas.

Tenant do Orchestrator

O tenant do Orchestrator do qual as dependências da biblioteca devem ser restauradas.

Autenticação

Para autenticação no Orchestrator, você precisa criar credenciais no Jenkins antecipadamente. Existem quatro opções para autenticar:

(1) Autenticar em um Orchestrator local usando nome de usuário e senha.

(2) Autenticar em um Cloud Orchestrator usando um token de atualização (chave de API).

(3) Autentique-se em um Cloud Orchestrator usando autenticação de aplicativo externo.

(4) Autenticar em um Orchestrator local usando autenticação de aplicativo externo.

Exemplo de pipeline

ipeline {
  agent any
  environment {
      MAJOR = '1'
      MINOR = '0'
  }
  stages {
    stage ('Build') {
      steps {
        UiPathPack (
          outputPath: "Output\)\)\)\)${env.BUILD_NUMBER}",
          projectJsonPath: "UiBank\)\)\)\)project.json",
          version: [$class: 'ManualVersionEntry', version: "${MAJOR}.${MINOR}.${env.BUILD_NUMBER}"]
          useOrchestrator: true,
          traceLoggingLevel: "None",
          orchestratorAddress: "OrchestratorUrl",
          orchestratorTenant: "tenant name",
          credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: “credentialsId”]
        )
      }
    }
  }
}ipeline {
  agent any
  environment {
      MAJOR = '1'
      MINOR = '0'
  }
  stages {
    stage ('Build') {
      steps {
        UiPathPack (
          outputPath: "Output\)\)\)\)${env.BUILD_NUMBER}",
          projectJsonPath: "UiBank\)\)\)\)project.json",
          version: [$class: 'ManualVersionEntry', version: "${MAJOR}.${MINOR}.${env.BUILD_NUMBER}"]
          useOrchestrator: true,
          traceLoggingLevel: "None",
          orchestratorAddress: "OrchestratorUrl",
          orchestratorTenant: "tenant name",
          credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: “credentialsId”]
        )
      }
    }
  }
}

UiPath Deploy

Aplicação: RPA

Tipo: Tarefa pós-construção

O UiPath Deploy está disponível em trabalhos e pipelines padrão e permite implantar um pacote UiPath NuGet no UiPath Orchestrator.



Configuração

Parâmetro do trabalho

Description

Caminho do(s) pacote(s)

A pasta que contém seu(s) pacote(s) nuget UiPath.

Endereço do Orchestrator

O endereço da Instância do Orchestrator para a qual o(s) pacote(s) será(ão) implantado(s).

Tenant do Orchestrator

O tenant do Orchestrator no qual o(s) pacote(s) será(ão) implantado(s).

Pasta do Orchestrator

A pasta em que os ativos serão implantados. Se a pasta for uma pasta clássica, você também precisará definir o campo environments.Para pastas modernas, a configuração do campo environments não é necessária.
Para inserir subpastas, certifique-se de inserir o nome da pasta pai e o nome da subpasta. Por exemplo, use AccountingTeam\TeamJohn.

Ambientes (necessário para pastas Classic)

O ambiente no qual o pacote será implantado como um processo. Para o projeto e o ambiente com processos existentes, os processos serão atualizados para usar a versão mais recente do projeto. Especifique o ambiente no qual o pacote será implantado como um processo. Para o projeto e o ambiente com processos existentes, os processos serão atualizados para usar a versão mais recente do projeto.

Pontos de Entrada

Especifique pontos de entrada para criar ou atualizar um processo. O ponto de entrada especifica o caminho de arquivo começando da raiz do projeto.

Condições:

  • Os pontos de entrada estão disponíveis para o Orchestrator versão 21.4 ou superior (por exemplo, 21.4.UiPathDeploy.entryPoints). Para versões do Orchestrator inferiores à 21.4, você precisa inserir qualquer valor, pois o campo não pode permanecer vazio.
  • Ponto de entrada padrão definido como Main.xaml.
  • Para pastas clássicas (obsoletas), você pode especificar apenas um ponto de entrada para cada ambiente.
  • Para obter mais informações, consulte Pontos de entrada do Orchestrator.

Autenticação

Para autenticação no Orchestrator, você precisa criar credenciais no Jenkins antecipadamente. Existem quatro opções para autenticar:

(1) Autenticar em um Orchestrator local usando nome de usuário e senha.

(2) Autenticar em um Cloud Orchestrator usando um token de atualização (chave de API).

(3) Autentique-se em um Cloud Orchestrator usando autenticação de aplicativo externo.

(4) Autenticar em um Orchestrator local usando autenticação de aplicativo externoautenticação de aplicativo externo.

Nível de registro em log do trace

Configuração usada para habilitar o registro de rastreamento em um dos seguintes níveis:

  • Nenhum
  • Crítica
  • Erro
  • Aviso
  • Information
  • Prolixo. (O padrão é definido como Nenhum).

    Útil para fins de depuração.

Observação:

Certifique-se de que sua rede permite o acesso ao seguinte feed de pacote do NuGet:

  • https://api.nuget.org/v3/index.json
  • https://uipath.pkgs.visualstudio.com/_packaging/nuget-packages/nuget/v3/index.json
  • https://uipath.pkgs.visualstudio.com/Public.Feeds/_packaging/UiPath-* Internal/nuget/v3/index.json
  • https://www.myget.org/F/workflow
  • http://www.myget.org/F/uipath
  • https://www.myget.org/F/uipath-dev/api/v3/index.json

Exemplo de pipeline

pipeline {
  agent any
  environment {
      MAJOR = '1'
      MINOR = '0'
  }
  stages {
    stage ('PostBuild') {
      steps {
        UiPathDeploy (
          packagePath: "path\)\)\)    o\)\)NuGetpackage",
          orchestratorAddress: "OrchestratorUrl",
          orchestratorTenant: "tenant name",
          folderName: "folder name",
          environments: "environment",
          credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: “credentialsId”],
          traceLoggingLevel: 'None'
        )
      }
    }
  }
}pipeline {
  agent any
  environment {
      MAJOR = '1'
      MINOR = '0'
  }
  stages {
    stage ('PostBuild') {
      steps {
        UiPathDeploy (
          packagePath: "path\)\)\)    o\)\)NuGetpackage",
          orchestratorAddress: "OrchestratorUrl",
          orchestratorTenant: "tenant name",
          folderName: "folder name",
          environments: "environment",
          credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: “credentialsId”],
          traceLoggingLevel: 'None'
        )
      }
    }
  }
}

Testes do UiPath Run

Aplicativo : Testes

Tipo: Tarefa pós-construção

Os testes UiPath Run estão disponíveis em trabalhos e pipelines padrão e permitem:

  • Execute um conjunto de testes existente no Orchestrator.
  • Empacote, implante e execute casos de teste, especificando o caminho para um projeto de teste UiPath.

Após a conclusão da execução do teste, a guia Test Result é publicada no build do Jenkins, mostrando os resultados detalhados. Além disso, um arquivo de resultados de teste JUnit é criado para o caminho de saída do resultado do teste, quando especificado, ou para a raiz da área de trabalho, se não for especificado.

Dependendo do resultado, a compilação será marcada como bem-sucedida (todos os casos de teste foram aprovados), ou instável (pelo menos um caso de teste falhou).



Configuração

Parâmetro do trabalho

Description

Destino

  • Especifique um conjunto de teste existente no UiPath Orchestrator (para executar o conjunto de teste).
  • Forneça o caminho project.json de um projeto UiPath Testing (para executar o projeto de teste).

Caminho de saída dos resultados dos testes

O conjunto de teste executado retorna o resultado do teste como junit.xml. Especifique o caminho onde o resultado deve ser armazenado, relativo ao diretório do espaço de trabalho do Jenkins (por exemplo, result.xml).

Parâmetros de Entrada

Defina Argumentos personalizados para seus casos de teste para substituir os valores padrão no nível do conjunto de testes. Por meio dos argumentos, você pode definir parâmetros para casos de teste no runtime. Para definir argumentos, você precisa publicar um pacote com argumentos.

Endereço do Orchestrator

O endereço da Instância do Orchestrator para a qual o(s) pacote(s) será(ão) implantado(s).

Tenant do Orchestrator

O tenant do Orchestrator no qual o(s) pacote(s) será(ão) implantado(s).

Pasta do Orchestrator

A pasta em que os ativos serão implantados.

Se ela for uma pasta clássica, você também precisará definir o campo environments.
Para pastas modernas, definir o environments. não é necessário.
Para inserir subpastas, certifique-se de inserir o nome da pasta pai e o nome da subpasta. Por exemplo, use AccountingTeam\TeamJohn.

Ambientes (necessário para pastas Classic)

O ambiente no qual o pacote será implantado como um processo. Para o projeto e o ambiente com processos existentes, os processos serão atualizados para usar a versão mais recente do projeto. Especifique o ambiente no qual o pacote será implantado como um processo. Para o projeto e o ambiente com processos existentes, os processos serão atualizados para usar a versão mais recente do projeto.

Autenticação

Para autenticação no Orchestrator, você precisa criar credenciais no Jenkins antecipadamente. Existem quatro opções para autenticar:

(1) Autenticar em um Orchestrator local usando nome de usuário e senha.

(2) Autenticar em um Cloud Orchestrator usando um token de atualização (chave de API).

(3) Autentique-se em um Cloud Orchestrator usando autenticação de aplicativo externo.

(4) Autenticar em um Orchestrator local usando autenticação de aplicativo externoautenticação de aplicativo externo.

Tempo Limite (segundos)

O tempo limite de execução para a execução do teste. O valor padrão é 7200 segundos. Se o tempo limite exceder antes que a execução no Orchestrator seja concluída e retorne o resultado, a compilação será cancelada e marcada como falha.

Nível de registro em log do trace

Configuração usada para habilitar o registro de rastreamento em um dos seguintes níveis:

  • Nenhum
  • Crítica
  • Erro
  • Aviso
  • Information
  • Prolixo. (O padrão é definido como Nenhum).

    Útil para fins de depuração.

Exemplo de pipeline

pipeline {
  agent any
  environment {
    MAJOR = '1'
    MINOR = '0'
  }
  stages {
    stage ('PostBuild') {
      steps {
        UiPathTest (
          testTarget: [$class: 'TestSetEntry', testSet: "My Test Set"],
          orchestratorAddress: "OrchestratorUrl",
          orchestratorTenant: "tenant name",
          folderName: "folder name",
          timeout: "10000",
          traceLoggingLevel: 'None',
          testResultsOutputPath: "result.xml",
          credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: "credentialsId"]
        )
      }
    }
  }
}pipeline {
  agent any
  environment {
    MAJOR = '1'
    MINOR = '0'
  }
  stages {
    stage ('PostBuild') {
      steps {
        UiPathTest (
          testTarget: [$class: 'TestSetEntry', testSet: "My Test Set"],
          orchestratorAddress: "OrchestratorUrl",
          orchestratorTenant: "tenant name",
          folderName: "folder name",
          timeout: "10000",
          traceLoggingLevel: 'None',
          testResultsOutputPath: "result.xml",
          credentials: [$class: 'UserPassAuthenticationEntry', credentialsId: "credentialsId"]
        )
      }
    }
  }
}

Obtendo a chave de API do Cloud Orchestrator



Configurar conexão de serviço para aplicativos externos

Etapa 1: configurar seu aplicativo externo e escopos. Após adicionar o aplicativo, mantenha o ID do aplicativo, Segredo e Escopos do aplicativo em mão, para serem usados na próxima etapa.

Observação: se você gerar e usar um novo segredo, o antigo será inválido.

Etapa 2: configure credenciais de aplicativos como texto do Segredo no Jenkins. Para essa etapa, é necessário o Segredo gerado no Automation Cloud.

Etapa 3: configure a autenticação para cada tarefa em ações pós-criação, adicionando o nome da conta, seguido pelo ID do aplicativo, segredo e escopos do aplicativo gerados por meio da Automation Cloud.

Observação: considere usar o aplicativo externo em pipelines individuais para evitar erros de invalidação.

Informações Adicionais

  • Todos os caminhos especificados devem ser locais para o espaço de trabalho atual. Você pode usar variáveis de ambiente em caminhos, embora deva certificar-se de que elas resultem em caminhos locais para o espaço de trabalho.
  • Para implantar pacotes ou executar testes, certifique-se de que o usuário autenticado tenha permissões de Exibição de pastas (ou Exibição de unidades organizacionais) e (somente20.4+ ) Exibição de tarefas em segundo plano .
  • Para empacotar bibliotecas, quando conectado a uma instância do orquestrador, certifique-se de que o usuário autenticado tenha a permissão de exibição de bibliotecas .
  • Para obter mais detalhes sobre como gerenciar aplicativos externos:

Solução de problemas do plug-in Jenkins

Se você encontrar problemas de instalação ou atualização, considere os seguintes cenários para a solução dos problemas.

erro não autorizado

Descrição: Erro não autorizado.

Soluções de problemas:

  • Se você usar autenticação básica: certifique-se de que a combinação de nome de usuário e senha no login da web esteja correta.

    Se a autenticação federada estiver habilitada, certifique-se de escrever o nome de usuário na tarefa como “DOMAIN\user”

  • Se você usar autenticação de token:

    • Revogue o token do painel de acesso à API e gere um novo.
    • Certifique-se de que o usuário que gerou a chave possa acessar o Orchestrator e tenha uma conta de usuário na instância do Orchestrator
  • Se você se autenticar em um On-Premise Orchestrator: verifique se o certificado do Orchestrator é válido e se a máquina que está executa o trabalho confia no certificado do Orchestrator caso você esteja usando um certificado autoassinado. Você pode receber esse erro porque o certificado usado para o Orchestrator não é válido. Isso pode significar que ele tem o CN errado ou outros problemas de validação.

erro proibido

Solução: o usuário não tem permissão para executar a ação. Certifique-se de que o usuário tenha permissões para ler pastas, fazer upload de pacotes, criar e atualizar processos, ler conjuntos de teste e casos de teste, ler tarefas em segundo plano e criar e executar conjuntos de teste.

Pasta/ambiente não encontrado

Solução: Certifique-se de que o usuário autenticado usado pelos plug-ins CI/CD tenha as permissões Folders.View e BackgroundTask.View (somente para 20.4).

O pacote já existe (conflito)

Solução: certifique-se de que o pacote que você está tentando implantar não exista com a mesma versão. Se existir, considere o uso do controle de versão automático do pacote, para que a nova versão seja aprimorada toda vez que implantarmos.

Falha ao executar o comando (erro genérico)

Solução: Se a área de trabalho Jenkins estiver dentro de um local no disco (por exemplo, C:\Windows or C:\Program Files) para o qual o usuário não tem permissões, certifique-se de que a área de trabalho seja colocada em um caminho que possa ser acessado pelo usuário.

Jenkins falha ao processar caminhos contendo caracteres não latinos

Solução: Jenkins não é capaz de transmitir corretamente caracteres codificados fora do padrão ao invocar o plug-in UiPath. Os caracteres desconhecidos serão substituídos por ???.
A solução depende de como o Jenkins é implantado no servidor e nas máquinas host do agente, mas envolve definir file.encoding como UTF-8 nas opções Java :

Windows

Ao executar o Jenkins no Windows como um serviço: no arquivo de configuração do serviço, adicione os argumentos dentro da tag. Siga o exemplo de script abaixo.

<arguments>-Xrs -Xmx512m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dfile.encoding=UTF-8 -jar "%BASE%\)\)jenkins.war" --httpPort=8080 --webroot="%BASE%\)\)war"</arguments><arguments>-Xrs -Xmx512m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dfile.encoding=UTF-8 -jar "%BASE%\)\)jenkins.war" --httpPort=8080 --webroot="%BASE%\)\)war"</arguments>
Ao executar o Jenkins dentro do Docker: passe o JAVA_OPTS para o container via --env JAVA_OPTS="...", seguindo o script de exemplo abaixo.
docker run --name myjenkins -p 8080:8080 -p 50000:50000 --env JAVA_OPTS=-Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dfile.encoding=UTF-8 jenkins/jenkins:ltsdocker run --name myjenkins -p 8080:8080 -p 50000:50000 --env JAVA_OPTS=-Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dfile.encoding=UTF-8 jenkins/jenkins:lts
Ao executar o Jenkins dentro do Tomcat: use a variável de ambiente CATALINA_OPTS. Siga o exemplo de script abaixo.
export CATALINA_OPTS="-DJENKINS_HOME=/path/to/jenkins_home/ -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dfile.encoding=UTF-8 -Xmx512m"export CATALINA_OPTS="-DJENKINS_HOME=/path/to/jenkins_home/ -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -Dfile.encoding=UTF-8 -Xmx512m"

Linux

Ao executar em distribuições Linux baseadas em Debian ou Ubuntu: no arquivo de configuração, procure o argumento JAVA_ARGSe adicione a codificação do arquivo. Siga o exemplo de script abaixo:
JAVA_ARGS="-Dfile.encoding=UTF-8 -Xmx512m"JAVA_ARGS="-Dfile.encoding=UTF-8 -Xmx512m"

Ao executar em distribuições baseadas em RedHat Linux: no arquivo de configuração, procure o argumento JENKINS_JAVA_OPTIONS e adicione a codificação do arquivo. Siga o exemplo de script abaixo.

JENKINS_JAVA_OPTIONS="-Dfile.encoding=UTF-8 -Xmx512m"JENKINS_JAVA_OPTIONS="-Dfile.encoding=UTF-8 -Xmx512m"

Was this page helpful?

Obtenha a ajuda que você precisa
Aprendendo RPA - Cursos de automação
Fórum da comunidade da Uipath
Logotipo branco da Uipath
Confiança e segurança
© 2005-2024 UiPath. All rights reserved.