studio
2023.10
false
Importante :
A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.
UiPath logo, featuring letters U and I in white

Guia do usuário do Studio

Última atualização 3 de set de 2025

Caso de Teste Codificado

Os casos de teste codificados automatizam e validam o comportamento do aplicativo de maneira estruturada. Eles são semelhantes a casos de teste de pouco código e permitem automação flexível usando código.

Ao criar um caso de teste codificado, você define uma estrutura Dado-Quando-Então. Esta estrutura consiste em três fases:
  1. Organizar - A fase de organização prepara o aplicativo.
  2. Agir - A fase de agir executa ações específicas.
  3. Afirmar - A fase de afirmar verifica os resultados esperados.

Os casos de teste codificados também podem invocar outros fluxos de trabalho ou casos de teste de pouco código, permitindo reutilização de código. Esta integração permite a criação de cenários de teste flexíveis.

You can apply execution templates for Coded test cases, as well. Visit Execution Templates to learn how to work with execution templates.



Estrutura

As automações codificadas apresentam um design estruturado com namespaces , classes auxiliares e métodos de Entry Point. O framework de automações codificadas permite escrever as automações usando a linguagem de programação C#.

Siga a estrutura detalhada de uma automação codificada conforme descrito nas seções a seguir.

Ao criar uma automação codificada, um namespace é gerado automaticamente usando o nome do projeto do Studio. Por exemplo, se o seu projeto do Studio for denominado "Meu projeto", o namespace para todas as automações codificadas será "Meu projeto".

Além disso, se você criar uma automação codificada dentro de uma pasta no seu projeto do Studio, o namespace será o nome do projeto e o nome da pasta. Por exemplo, se o seu projeto do Studio se chamar "Meu projeto" e a pasta se chamar "local", o namespace será "Meuprojeto.local".

Tanto o fluxo de trabalho codificado quanto as automações de casos de teste codificados usam a classe parcial CodedWorkflow do pacote UiPath.CodedWorkflow. Essa classe dá à automação acesso às interfaces necessárias para serviços (iguais a pacotes de atividades), com base nos pacotes de atividades instalados em seu projeto.
Observação: o pacote UiPath.CodedWorkflows é incluído automaticamente quando você importa um pacote de atividades que suporta automações codificadas, como UiPath.System.Activities 23.10 ou superior.

Fluxo de Trabalho Codificado

As automações codificadas herdam a classe parcial CodedWorkflow, criando uma relação do tipo CodedAutomationExample : CodedWorkflow. Isso significa que a classe CodedAutomationExample herda atributos, métodos e funcionalidade da classe CodedWorkflow. Essencialmente, ele pode acessar e utilizar as funcionalidades definidas na classe CodedWorkflow, o que fornece uma base para a automação codificada, tornando mais fácil criar e personalizar o comportamento da automação.
A classe CodedWorkflow é declarada como uma classe parcial, permitindo estender suas funcionalidades definindo a mesma classe parcial CodedWorkflow em um arquivo de código-fonte. Dessa forma, você pode adicionar novos campos e métodos para personalizar ainda mais o comportamento de suas automações codificadas. Você pode usar essa abordagem para implementar uma interface Antes e Depois, especificamente para casos de teste codificados.
Além disso, a classe parcial CodedWorkflow herda a classe CodedWorkflowBase.


CodedWorkflowBase

A classe CodedWorkflowBase contém as funcionalidades integradas que uma automação codificada herda. Esta classe contém métodos e propriedades específicas para gerenciar instâncias de fluxo de trabalho, acesso a runtime, manipulação de contêineres de serviço e configuração de contextos de ambiente. A classe CodedWorkflowBase também oferece outro método separado para registro de log que você mesmo pode personalizar.
Observação: nas configurações do editor de código, selecione Habilitar descompilação de origem para visualizar a classe CodedWorkflowBase.
Confira os métodos CodedWorkflowBase na tabela abaixo:
MétodoDescription
serviceContainer(ICodedWorkflowServiceContainer)Fornece acesso ao contêiner de injeção de dependência específico do fluxo de trabalho codificado atual. Esse contêiner, conhecido como contêiner de serviço, permite recuperar instâncias de serviços que foram registrados nele.
GetRunningJobInformation()Recupera informações sobre o trabalho atualmente em execução no contexto do fluxo de trabalho codificado. O método acessa a propriedade RunningJobInformation do objeto executorRuntime , que contém informações sobre status do trabalho, progresso, parâmetros e carimbos de data/hora.
Log(string message, LogLevel level = LogLevel.Info, IDictionary<string, object>additionalLogFields = null)Adiciona campos de log adicionais às mensagens de log com atributos especificados.
RunWorkflow(string workflowFilePath,IDictionary<string, object> inputArguments = null,TimeSpan? timeout = null, bool isolated = false, InvokeTargetSession targetSession = InvokeTargetSession.Current)Fornece uma estrutura para executar um fluxo de trabalho no contexto de um determinado runtime de fluxo de trabalho. Ele pode definir parâmetros, lidar com isolamento potencial e iniciar a execução do fluxo de trabalho. A tarefa retornada fornece os resultados do fluxo de trabalho executado, incluindo sua saída e seus argumentos de entrada/saída.
RunWorkflowAsync(string workflowFilePath,IDictionary<string, object> inputArguments = null, TimeSpan?timeout = null, bool isolated = false, InvokeTargetSession targetSession = InvokeTargetSession.Current)Fornece uma estrutura para executar um fluxo de trabalho de forma assíncrona no contexto do runtime do fluxo de trabalho dado. Ele pode definir parâmetros, lidar com isolamento potencial e iniciar a execução do fluxo de trabalho. A tarefa retornada fornece os resultados do fluxo de trabalho executado, incluindo sua saída e seus argumentos de entrada/saída.
DelayAsync(TimeSpan time) e DelayAsync(int delayMs)Suspende a execução por um período especificado de tempo de forma assíncrona.
Delay(TimeSpan time) e Delay(int delayMs)Suspende a execução por um período de tempo especificado.
HttpClient BuildClient(string scope = "Orchestrator", bool force = true)Cria um cliente HTTP com um escopo e um token de acesso especificados.
RegisterServices(ICodedWorkflowsServiceLocator serviceLocator)Registers services (activity packages) to the coded workflow's service locator. You can override it when you want to inject custom services into the dependency injection container. Learn how to create and use custom services (coded activity packages) here.
O método do Entry Point para fluxos de trabalho codificados e casos de teste codificados é nomeado Execute() e atribuído como Workflow ou TestCase. Você pode alterar o nome do método, desde que o atribua a Workflow ou a TestCase.
Você só pode usar um método Execute() ([TestCase] ou [Workflow]) dentro de um arquivo, que herda a classe Coded Workflow.

In this method, you can add input and/or output arguments, which are equivalent to In, Out or In/Out arguments in low-code automations. Go through the Working with Input and Output arguments tutorial to learn how to use arguments in coded automations.

Esse método de Entry Point serve como o ponto de partida para a execução das automações. Isso torna os fluxos de trabalho codificados e os casos de teste fáceis de identificar como Entry Points devido ao seu método Execute().


Compatibilidade do projeto

Você pode usar automações codificadas somente em projetos do Windows e multiplataforma.

  • Estrutura
  • Fluxo de Trabalho Codificado
  • CodedWorkflowBase
  • Compatibilidade do projeto

Esta página foi útil?

Obtenha a ajuda que você precisa
Aprendendo RPA - Cursos de automação
Fórum da comunidade da Uipath
Uipath Logo
Confiança e segurança
© 2005-2025 UiPath. Todos os direitos reservados.