UiPath Documentation
activities
latest
false
Atividades do UIAutomation
Importante :
A tradução automática foi aplicada parcialmente neste conteúdo. A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.

Sobre seletores

Seletores em Automação de Interface Gráfica: como eles identificam elementos de interface gráfica, estrutura de tags, tipos de atributo e práticas recomendadas.

Para automatizar ações específicas na interface do usuário, é necessário interagir com diversas janelas, botões, listas suspensas, entre outros. Uma das maneiras em que os elementos de interface gráfica podem ser identificados é usar sua posição na tela, mas isso pode não ser confiável.

Para superar esse problema, o Studio usa o que chamamos de seletores. Eles armazenam os atributos de um elemento da interface gráfica e seus pais, na forma de um fragmento XML.

Na maioria das vezes, os seletores são gerados automaticamente pelo Studio e não requerem mais nenhuma entrada sua, especialmente se os aplicativos que você estiver tentando automatizar tiverem uma interface de usuário estática.

No entanto, alguns softwares possuem layouts que se modificam e atribuem nós com valores voláteis, como alguns aplicativos web. O Studio não pode prever essas alterações e, portanto, você pode ter que gerar manualmente alguns seletores.

Um seletor tem a seguinte estrutura:

<node_1/><node_2/>...<node_N/>
<node_1/><node_2/>...<node_N/>

O último nó representa o elemento GUI que interessa a você e todos os anteriores representam os pais desse elemento. <node_1> geralmente é referido como um nó raiz, e representa a janela superior do aplicativo.

Cada nó contém um ou mais atributos que ajudam a identificar um nível específico do aplicativo selecionado.

Cada nó tem o seguinte formato:

<ui_system attr_name_1='attr_value_1' ... attr_name_N='attr_value_N'/>
<ui_system attr_name_1='attr_value_1' ... attr_name_N='attr_value_N'/>

Cada atributo tem um valor atribuído. É importante escolher atributos com um valor constante. Se o valor de um atributo mudar a cada vez que o aplicativo for iniciado, o seletor não conseguirá identificar corretamente o elemento.

Os seletores são exibidos no painel Propriedades de atividades, em Entrada > Destino > Seletor. Todas as atividades relacionadas aos elementos gráficos têm essa propriedade.

A janela Opções de seleção permite selecionar e editar um destino. Para acessar essa janela, no painel Designer de Fluxo de Trabalho , clique no botão Opções docs image botão no corpo de uma atividade e selecione Indicar destino na tela ou Editar destino.

A janela Editor de Seletor permite visualizar e editar o seletor gerado automaticamente e seus atributos. Para acessar essa janela, use o botão Reticências próximo ao campo Seletor , no painel Propriedades .

Opção

Description

Validar

O botão mostra o status do seletor, verificando a validade da definição do seletor e a visibilidade do elemento de destino na tela.

O botão Validar possui três estados:

  • Imagem dos documentos O seletor está sendo validado
  • Imagem dos documentos Seletor válido
  • Imagem dos documentos Seletor inválido
  • Imagem dos documentos Seletor alterado, revalidar

O botão está correlacionado aos estados de validação do UI Explore.

Indicar Elemento

Indica um novo elemento da interface gráfica para substituir o anterior.

Reparar

Permite que você indique novamente o mesmo elemento de interface gráfica de destino e repare o seletor. Essa operação não substitui completamente o seletor anterior. O botão fica disponível apenas quando o seletor for inválido.

Highlight

Traz o elemento de destino para o primeiro plano. O destaque continua até que a opção seja desabilitada com um clique. O botão será habilitado apenas se o seletor for válido.

Editar Atributos

Contém todos os componentes da aplicação necessários para identificar a aplicação de destino (uma janela, botão, etc.). Esta seção é editável.

Editar Seletor

Contém o seletor real. Esta seção é editável.

Abrir no Explorador de Interface Gráfica

Inicia o UI Explorer. A opção fica habilitada apenas para seletores válidos.

Observação:

Em algumas situações, quando o Studio e o aplicativo de destino são abertos com diferentes privilégios elevados, o seletor pode não funcionar. Recomendamos sempre abrir os dois aplicativos com os mesmos privilégios.

Tags e atributos compatíveis​

As tabelas a seguir apresentam a compatibilidade entre tags e atributos usados para criar seletores e a capacidade do seletor.

No macOS, os tipos de seletor wnd, ax, java e sap podem ser usados para diferentes casos de uso:

  • Os seletores AX estão disponíveis para todos os tipos de aplicativos de desktop macOS.

  • Os seletores SAP estão disponíveis para SAP GUI para Java no macOS e exigem um servidor SAP com scripts habilitados. Esses seletores são os mais estáveis para aplicativos SAP e oferecem a melhor gama de recursos, como extrair dados de tabela.

  • Os seletores Java estão disponíveis para aplicativos Java. Como a GUI do SAP para Java também é um aplicativo baseado em Java, pode-se usar a estratégia de seleção Java para mudar do padrão e obter seletores Java.

    Observação:

    Selectors generated for Java applications which contain multiple WND tags cannot be used with events monitoring.

WND​

AtributoFuzzyRegExDiferenciação de maiúsculas e minúsculasSO
app✅✅✅Windows macOS
cls✅✅✅Windows
title✅✅✅Windows macOS
aaname✅✅✅Windows
ctrlname (WinForms)✅✅✅Windows
ctrlid (WinForms)✅✅✅Windows
idx❌❌❌Windows macOS
tid❌❌❌Windows macOS
pid❌❌❌Windows macOS
isremoteapp❌❌❌Windows
aastate✅✅✅Windows
Role✅✅✅Mac OS
enabled✅✅✅Mac OS
focado✅✅✅Mac OS
selecionado(s)✅✅✅Mac OS
Expandido✅✅✅Mac OS
sapClient (SAP)✅✅✅Windows macOS
sapLanguage (SAP)✅✅✅Windows macOS
sapProgram (SAP)✅✅✅Windows macOS
sapScreen (SAP)❌❌❌Windows macOS
sapSession (SAP)❌❌❌Windows macOS
sapSysName (SAP)✅✅✅Windows macOS
sapSysNumber (SAP)❌❌❌Windows macOS
sapSysSessionId (SAP)✅✅✅Windows macOS
sapTransaction (SAP)✅✅✅Windows macOS
sapUser (SAP)✅✅✅Windows macOS
curlApplet (Curl)✅✅✅Windows

HTML​

AtributoFuzzyRegExDiferenciação de maiúsculas e minúsculasSO
url✅✅✅Windows macOS Linux
htmlwindowname✅✅✅Windows macOS Linux
title✅✅✅Windows macOS Linux
class✅✅✅Windows macOS Linux
app❌❌❌Windows macOS Linux
idx❌❌❌Windows macOS Linux
pid❌❌❌Windows macOS Linux
tid❌❌❌Windows macOS Linux
excludehwnd❌❌❌Windows macOS Linux
bsid (Browser Session ID)❌❌❌Windows macOS Linux
isremoteapp❌❌❌Windows macOS Linux

WEBCTRL​

Os atributos tag e id usam valores de strings. Todos os outros atributos WEBCTRL têm valores dinâmicos.

AtributoFuzzyRegExDiferenciação de maiúsculas e minúsculasSO
tag✅✅✅Windows macOS Linux
idx✅✅✅Windows macOS Linux
aaname✅✅✅Windows macOS Linux
name✅✅✅Windows macOS Linux
id✅✅✅Windows macOS Linux
parentid✅✅✅Windows macOS Linux
class✅✅✅Windows macOS Linux
css-selector❌❌❌Windows macOS Linux
innertext✅✅✅Windows macOS Linux
visibleinnertext✅✅✅Windows macOS Linux
isleaf✅✅✅Windows macOS Linux
parentclass✅✅✅Windows macOS Linux
parentname✅✅✅Windows macOS Linux
src✅✅✅Windows macOS Linux
href✅✅✅Windows macOS Linux
tableCol✅✅✅Windows macOS Linux
tableRow✅✅✅Windows macOS Linux
colName✅✅✅Windows macOS Linux
rowName✅✅✅Windows macOS Linux
aria-label✅✅✅Windows macOS Linux
aria-labelledby✅✅✅Windows macOS Linux

CTRL​

AtributoFuzzyRegExDiferenciação de maiúsculas e minúsculasSO
Role✅✅✅Windows
name✅✅✅Windows
automationid✅✅✅Windows
labeledby✅✅✅Windows
aastate✅✅✅Windows
virtualname✅✅✅Windows
text✅✅✅Windows
rowName✅✅✅Windows
idx❌❌❌Windows

UIA​

AtributoFuzzyRegExDiferenciação de maiúsculas e minúsculasSO
accelkey (Accelerator Key)✅✅✅Windows
acskey (Access Key)✅✅✅Windows
automationid✅✅✅Windows
cls✅✅✅Windows
helpText✅✅✅Windows
legacyAccHelp (Legacy Accessible Help)✅✅✅Windows
enabled✅✅✅Windows
kbfocus (Is Keyboard Focusable)✅✅✅Windows
ispwd (Is Password)✅✅✅Windows
itemstatus✅✅✅Windows
itemtype✅✅✅Windows
rtid (Runtime ID)✅✅✅Windows
Role✅✅✅Windows
name✅✅✅Windows
pid✅✅✅Windows
tableRow❌❌❌Windows
tableCol❌❌❌Windows
rowName✅✅✅Windows
colName✅✅✅Windows
idx❌❌❌Windows

Java​

AtributoFuzzyRegExDiferenciação de maiúsculas e minúsculasSO
Role✅✅✅Windows macOS
name✅✅✅Windows macOS
virtualname✅✅✅Windows macOS
javastate✅✅✅Windows macOS
tableRow❌❌❌Windows macOS
tableCol❌❌❌Windows macOS
rowName✅✅✅Windows macOS
colName✅✅✅Windows macOS
idx❌❌❌Windows macOS
cls✅✅✅Windows macOS
accessibleClass✅✅✅Windows macOS

SAP​

AtributoFuzzyRegExDiferenciação de maiúsculas e minúsculasSO
id✅✅✅Windows macOS
leafid Esse atributo não fica exposto no painel Atributo porque é mutuamente exclusivo com o atributo id . Ele pode ser adicionado manualmente.✅✅✅Windows macOS
tableRow❌❌❌Windows macOS
tableCol❌❌❌Windows macOS
colName✅✅✅Windows macOS
relpath✅✅✅Windows macOS
itemId✅✅✅Windows macOS

AX​

AtributoFuzzyRegExDiferenciação de maiúsculas e minúsculasSO
Role✅✅✅Mac OS
subrole✅✅✅Mac OS
name✅✅✅Mac OS
title✅✅✅Mac OS
Identificador✅✅✅Mac OS
Nome do arquivo✅✅✅Mac OS
url✅✅✅Mac OS
Ajuda✅✅✅Mac OS
enabled✅✅✅Mac OS
focado✅✅✅Mac OS
selecionado(s)✅✅✅Mac OS
Expandido✅✅✅Mac OS
idx❌❌❌Mac OS
Contagem de Linhas❌❌❌Mac OS
Contagem de colunas❌❌❌Mac OS
tableRow❌❌❌Mac OS
tableCol❌❌❌Mac OS
rowName✅✅✅Mac OS
colName✅✅✅Mac OS

cURL​

AtributoFuzzyRegExDiferenciação de maiúsculas e minúsculasSO
cls✅✅✅Windows
Role✅✅✅Windows
text✅✅✅Windows
title✅✅✅Windows
tableRow❌❌❌Windows
tableCol❌❌❌Windows
cabeçalhoDaColuna✅✅✅Windows
idx❌❌❌Windows

Silverlight​

Observe que a tag Silverlight não é compatível com os recursos Fuzzy, RegEx e Diferenciação de maiúsculas e minúsculas .

AtributoFuzzyRegExDiferenciação de maiúsculas e minúsculasSO
Role❌❌❌Windows
name❌❌❌Windows
text❌❌❌Windows
idx❌❌❌Windows

RDP​

A etiqueta RDP é usada para automação remota e seus atributos são idênticos à etiqueta WND.

AtributoFuzzyRegExDiferenciação de maiúsculas e minúsculasSO
app✅✅✅Windows
cls✅✅✅Windows
title✅✅✅Windows
aaname✅✅✅Windows
ctrlname (WinForms)✅✅✅Windows
ctrlid (WinForms)✅✅✅Windows
idx❌❌❌Windows
tid❌❌❌Windows
pid❌❌❌Windows
  • Tags e atributos compatíveis​
  • WND​
  • HTML​
  • WEBCTRL​
  • CTRL​
  • UIA​
  • Java​
  • SAP​
  • AX​
  • cURL​
  • Silverlight​
  • RDP​

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