Automatiser les applications web qui utilisent la norme Shadow DOM

Certaines applications web modernes utilisent la norme Shadow DOM pour fournir une encapsulation de style et de comportement pour des contrôles réutilisables, de sorte que les styles et les scripts de ces contrôles n\'interfèrent pas avec le reste de la page. Il restreint l\'accès direct aux objets Shadow DOM via le DOM normal.

Enregistreur prend en charge les automatisations basées sur des objets pour ces applications modernes, garantissant une automatisation fluide et minimisant le risque d\'échecs d\'automatisation.

Pour prendre en charge ces automatisations, vous pouvez utiliser les propriétés suivantes :
  • Chemin Shadow-Root : Utilisez la propriété Shadow-Root Path pour identifier et accéder aux éléments à l\'intérieur du shadow DOM. Cette propriété permet au Enregistreur de localiser avec précision et d\'automatiser les éléments qui sont encapsulés et non directement accessibles via le DOM standard. Il est représenté sous la forme d\'une liste de tableaux JSON de tous les éléments racine de l\'ombre au format chaîne, définissant la limite dans laquelle le Enregistreur recherchera l\'élément cible. Les variables peuvent être utilisées, mais les caractères génériques (*) ne sont pas pris en charge. C\'est la propriété par défaut pour les éléments qui se trouvent dans le Shadow DOM.
    Remarque : Assurez-vous de sélectionner la propriété chemin Shadow-Root pour automatiser les éléments de shadow root. Lors de l\'automatisation des éléments de l\'ombre (shadow root) au sein d\'une page web, le Enregistreur recherchera d\'abord l\'élément spécifique par ID, puis par sélécteur CSS.

    Propriétés pour automatiser les éléments de shadow root

  • Sélecteur CSS: Les sélecteurs CSS sont utilisés pour identifier et interagir avec les éléments d\'une page web de manière similaire à un DOMXPath. Utilisez la propriété Sélecteur CSS pour sélectionner des éléments dans le DOM en utilisant la syntaxe de sélecteur CSS, comme la classe, l\'identifiant ou le nom de balise. Les sélecteurs CSS sont utilisés pour cibler des éléments en fonction de leurs attributs. Si votre élément se trouve dans le shadow DOM, alors les sélecteurs CSS doivent être utilisés en conjonction avec la propriété Shadow-Root Path. Les variables peuvent être utilisées, mais les caractères génériques (*) ne sont pas pris en charge.
    Remarque : Cette propriété est disponible pour tous les éléments HTML.
    Important : Les sélecteurs CSS fonctionneront correctement même si vous n\'utilisez pas la dernière version Enregistreur package (3.3.1-20241001-095119), tant que la version de l\'extension Google Chrome est 3.3.0.0 ou ultérieure. Cependant, si la version de l\'extension Google Chrome est antérieure à 3.3.0.0, assurez-vous de désélectionner la propriété du sélecteur CSS pour que vos automatisations s\'exécutent avec succès.
Vous pouvez capturer et automatiser les éléments suivants au sein du Shadow DOM :
  • Zone de texte
  • Zone de liste déroulante
  • Case à cocher
  • Bouton
  • Case d\'option
  • Lien
  • Étiquette
  • Vue de liste
  • Tableau

Soutenabilité

  • Cette fonctionnalité est prise en charge pour les navigateurs Google Chrome et Microsoft Edge.
  • Les cadres et les IFrames (même domaine et domaine croisé) sont pris en charge.
  • Prend en charge les conditions L\'objet existe et L\'objet n\'existe pas dans les actions suivants : Si, Boucle > Tant que action, et Attendre > Attendre la condition action.
  • Prend en charge tous les contrôles HTML existants et leurs actions correspondants.
  • Prend en charge VMware Horizon, Citrix XenApp et XenApp (CR) vers XenApp (application métier).

Comportement connu

  • L\'automatisation des éléments de shadow root à l\'aide de la propriété DOMXPath n\'est pas prise en charge.
  • Les éléments à l\'intérieur d\'une racine Shadow fermée ne peuvent pas être accessibles.
  • La recherche d\'un élément par tous les algorithmes n\'est pas prise en charge.
  • L\'automatisation des éléments de shadow root au sein d\'iframes imbriquées de domaines croisés n\'est pas prise en charge.
  • Lors de l\'utilisation de la propriété Obtenir la propriété action, la propriété Chemin Shadow-Root n\'affichera aucune valeur.