UiPath Documentation
activities
latest
false
Activités UIAutomation
Important :
Veuillez noter que ce contenu a été localisé en partie à l’aide de la traduction automatique. La localisation du contenu nouvellement publié peut prendre 1 à 2 semaines avant d’être disponible.

À propos des sélecteurs

Sélecteurs dans UI Automation: comment ils identifient les éléments d'IU, la structure des balises, les types d'attributs et les meilleures pratiques.

Pour automatiser des actions spécifiques dans l’interface utilisateur, vous devez interagir avec différents fenêtres, boutons, listes déroulantes et bien d’autres. Les éléments d’IU peuvent être identifiés notamment en utilisant leur position sur l’écran, mais cela peut être peu fiable.

Dans Studio, ce problème est résolu grâce à l’emploi de sélecteurs. Leur rôle est de stocker les attributs d’un élément d’interface utilisateur graphique et de ses parents sous la forme d’un fragment XML.

Les sélecteurs sont généralement générés par Studio de façon automatique, sans que vous ayez besoin de fournir d'autres données. C'est d'autant plus vrai si votre projet d'automatisation porte sur une interface utilisateur statique.

Certains logiciels (par exemple des applications Web) sont cependant caractérisés par une mises en page changeante et des nœuds d’attribut liés à des valeurs volatiles. Ces changements ne peuvent pas être anticipés par Studio et il est donc possible que vous ayez besoin de créer certains sélecteurs manuellement.

Voici la structure d'un sélecteur :

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

Le dernier nœud représente l'élément de l'interface utilisateur graphique que l'on souhaite automatiser, tandis tous les nœuds précédents représentent les parents de cet élément. <node_1> est généralement connu sous le nom de nœud racine : il représente la fenêtre supérieure de l'application.

Chaque nœud possède un ou plusieurs attributs pour permettre d'identifier sans hésitation un niveau donné de l'application sélectionnée.

Chaque nœud suit le format suivant :

<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'/>

Une valeur est associée à chaque attribut. Il est important de choisir des attributs avec des valeurs constantes, car le sélecteur ne pourra pas reconnaître l'élément si les valeurs des attributs changent à chaque démarrage de l'application.

Les sélecteurs sont affichés dans le panneau d'activités Propriétés (Properties), sous Saisie > Cible > Sélecteur (Input > Target > Selector). Toutes les activités liées aux éléments graphiques possèdent cette propriété.

La fenêtre Options de sélection (Selection Options) permet de sélectionner et de modifier une cible. Pour accéder à cette fenêtre, dans le panneau Concepteur de workflow (Workflow Designer), cliquez sur le bouton Options docs image dans le corps d'une activité et sélectionnez Indiquer la cible à l'écran (Indicate target on screen) ou Modifier la cible (Edit target).

La fenêtre Éditeur de sélecteur permet d'afficher et de modifier le sélecteur automatique, ainsi que ses attributs. Pour accéder à cette fenêtre, utilisez le bouton Ellipse à côté du champ Sélecteur , dans le panneau Propriétés .

Option

Description

Valider

Le bouton indique l'état du sélecteur en vérifiant la validité de la définition de sélecteur et la visibilité de l'élément cible à l'écran.

Le bouton Valider a trois états :

  • image des documents Sélecteur en cours de validation
  • image des documents Sélecteur valide
  • image des documents Sélecteur non valide
  • image des documents Sélecteur modifié, revalider

Le bouton est relié aux états de validation d'UI Explorer.

Indiquer l'élément (Indicate Element)

Indiquez un nouvel élément d'IU pour remplacer le précédent.

Réparer (Repair)

Permet d'indiquer à nouveau le même élément d'IU cible et de réparer le sélecteur. Cette opération ne remplace pas complètement le sélecteur précédent. Le bouton est uniquement disponible lorsque le sélecteur n'est pas valide.

Mettre en surbrillance (Highlight)

Met l'élément cible au premier plan. Il reste surligné jusqu'à ce que l'option soit désactivée par clic. Le bouton est uniquement activé si le sélecteur est valide.

Modifier les attributs

Contient tous les composants de l'application nécessaires à l'identification de l'application cible (une fenêtre, un bouton, etc.). Cette section est modifiable.

Modifier le sélecteur

Contient le sélecteur réel. Cette section est modifiable.

Ouvrir dans UI Explorer

Lance UI Explorer. L'option est uniquement activée pour les sélecteurs valides.

Remarque :

Dans certains cas, lorsque Studio et l'application concernée sont ouvertes avec des privilèges élevés différents, le sélecteur peut ne pas fonctionner. Nous recommandons de toujours ouvrir les deux applications avec les mêmes privilèges.

Balises et attributs pris en charge​

Les tableaux suivants présentent la compatibilité entre les balises et les attributs utilisés pour créer des sélecteurs et la capacité du sélecteur.

Sur macOS, les types de sélecteurs wnd, ax, java, et sap peuvent être utilisés pour différents scénarios d'utilisation :

  • Les sélecteurs AX sont disponibles pour tous les types d'applications de bureau macOS.

  • Les sélecteurs SAP sont disponibles pour SAP GUI for Java sur macOS et nécessitent un serveur SAP dont la fonctionnalité de script est activée. Ces sélecteurs sont les plus stables pour les applications SAP et offrent la meilleure gamme de fonctionnalités, telles que l'extraction des données de tableau.

  • Des sélecteurs Java sont disponibles pour les applications Java. Étant donné que SAP GUI for Java est également une application basée sur Java, la stratégie de sélection Java peut être utilisée pour remplacer la stratégie par défaut et obtenir des sélecteurs Java.

    Remarque :

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

WND​

AttributFuzzyRegExSensible à la casseSystème d'exploitation
app✅✅✅macOS Windows
cls✅✅✅Windows
title✅✅✅macOS Windows
aaname✅✅✅Windows
ctrlname (WinForms)✅✅✅Windows
ctrlid (WinForms)✅✅✅Windows
idx❌❌❌macOS Windows
tid❌❌❌macOS Windows
pid❌❌❌macOS Windows
isremoteapp❌❌❌Windows
aastate✅✅✅Windows
Rôle✅✅✅macOS
enabled✅✅✅macOS
concentré✅✅✅macOS
Sélectionné✅✅✅macOS
Développée✅✅✅macOS
sapClient (SAP)✅✅✅macOS Windows
sapLanguage (SAP)✅✅✅macOS Windows
sapProgram (SAP)✅✅✅macOS Windows
sapScreen (SAP)❌❌❌macOS Windows
sapSession (SAP)❌❌❌macOS Windows
sapSysName (SAP)✅✅✅macOS Windows
sapSysNumber (SAP)❌❌❌macOS Windows
sapSysSessionId (SAP)✅✅✅macOS Windows
sapTransaction (SAP)✅✅✅macOS Windows
sapUser (SAP)✅✅✅macOS Windows
curlApplet (Curl)✅✅✅Windows

HTML​

AttributFuzzyRegExSensible à la casseSystème d'exploitation
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​

Les attributs tag et idx utilisent des valeurs de chaîne. Tous les autres attributs WEBCTRL ont des valeurs dynamiques.`

AttributFuzzyRegExSensible à la casseSystème d'exploitation
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​

AttributFuzzyRegExSensible à la casseSystème d'exploitation
Rôle✅✅✅Windows
name✅✅✅Windows
automationid✅✅✅Windows
labeledby✅✅✅Windows
aastate✅✅✅Windows
virtualname✅✅✅Windows
text✅✅✅Windows
rowName✅✅✅Windows
idx❌❌❌Windows

UIA​

AttributFuzzyRegExSensible à la casseSystème d'exploitation
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
Rôle✅✅✅Windows
name✅✅✅Windows
pid✅✅✅Windows
tableRow❌❌❌Windows
tableCol❌❌❌Windows
rowName✅✅✅Windows
colName✅✅✅Windows
idx❌❌❌Windows

Java​

AttributFuzzyRegExSensible à la casseSystème d'exploitation
Rôle✅✅✅macOS Windows
name✅✅✅macOS Windows
virtualname✅✅✅macOS Windows
javastate✅✅✅macOS Windows
tableRow❌❌❌macOS Windows
tableCol❌❌❌macOS Windows
rowName✅✅✅macOS Windows
colName✅✅✅macOS Windows
idx❌❌❌macOS Windows
cls✅✅✅macOS Windows
accessibleClass✅✅✅macOS Windows

SAP​

AttributFuzzyRegExSensible à la casseSystème d'exploitation
id✅✅✅macOS Windows
leafid Cet attribut n'est pas exposé dans le panneau des attributs car il est mutuellement exclusif avec l'attribut id . Il peut être ajouté manuellement.✅✅✅macOS Windows
tableRow❌❌❌macOS Windows
tableCol❌❌❌macOS Windows
colName✅✅✅macOS Windows
relpath✅✅✅macOS Windows
itemId✅✅✅macOS Windows

AX​

AttributFuzzyRegExSensible à la casseSystème d'exploitation
Rôle✅✅✅macOS
Sous-rôle✅✅✅macOS
name✅✅✅macOS
title✅✅✅macOS
Identificateur✅✅✅macOS
FileName✅✅✅macOS
url✅✅✅macOS
help✅✅✅macOS
enabled✅✅✅macOS
concentré✅✅✅macOS
Sélectionné✅✅✅macOS
Développée✅✅✅macOS
idx❌❌❌macOS
Nombre de lignes❌❌❌macOS
Nombre de colonnes❌❌❌macOS
tableRow❌❌❌macOS
tableCol❌❌❌macOS
rowName✅✅✅macOS
colName✅✅✅macOS

cURL​

AttributFuzzyRegExSensible à la casseSystème d'exploitation
cls✅✅✅Windows
Rôle✅✅✅Windows
text✅✅✅Windows
title✅✅✅Windows
tableRow❌❌❌Windows
tableCol❌❌❌Windows
colHeader✅✅✅Windows
idx❌❌❌Windows

Silverlight​

Veuillez noter que la balise Silverlight ne prend pas en charge les capacités Fuzzy, RegEx et Case-Sensitive .

AttributFuzzyRegExSensible à la casseSystème d'exploitation
Rôle❌❌❌Windows
name❌❌❌Windows
text❌❌❌Windows
idx❌❌❌Windows

RDP​

La balise RDP est utilisée pour l'automatisation à distance et ses attributs sont identiques à ceux de la balise WND.

AttributFuzzyRegExSensible à la casseSystème d'exploitation
app✅✅✅Windows
cls✅✅✅Windows
title✅✅✅Windows
aaname✅✅✅Windows
ctrlname (WinForms)✅✅✅Windows
ctrlid (WinForms)✅✅✅Windows
idx❌❌❌Windows
tid❌❌❌Windows
pid❌❌❌Windows
  • Balises et attributs pris en charge​
  • WND​
  • HTML​
  • WEBCTRL​
  • Ctrl​
  • UIA​
  • Java​
  • SAP​
  • AX​
  • cURL​
  • Silverlight​
  • RDP​

Cette page vous a-t-elle été utile ?

Connecter

Besoin d'aide ? Assistance

Vous souhaitez apprendre ? UiPath Academy

Vous avez des questions ? UiPath Forum

Rester à jour