ne peut pas identifier le bouton qui se trouve à l'intérieur du Shadowroot dans le Protractor.
J'ai essayé d'utiliser des DeepsSS comme suit, P>
mais je reçois p> Est-ce le moyen correct d'identifier les éléments à l'intérieur du Shadowroot pour le protrestor? Merci p> Ma page HTML est similaire à celle suivante, P> this.startnowbutton = élément (by.deepcss ("Bouton [Class =" Appliquer-maintenant "] ')); > P>
NosuchelementError: Aucun élément trouvé à l'aide du localisateur: par (sélecteur CSS, * / Bouton [Classe = "Appliquer-maintenant"]) P>
<div id="modal">
<div class="push-wrap">
<header id ="site-header">
<hmy-cms-header class="hydrated">
#shadow-root (open)
<header>
<div class=notification-banner> ... </div>
<div class="ca">
<button class="apply-now">"Apply"<span>now</span>
3 Réponses :
Essayez les options de localisation ci-dessous
1. const ele = element(by.css(div.ca>button.apply-now)); 2. const ele = element(by.buttonText('Apply'));
Merci pour votre réponse. Cela ne fonctionne pas car il ne peut pas identifier l'élément à l'intérieur de la racine d'ombre. toute autre façon? Merci
Il y a eu des problèmes avec le localisateur de DeePSSS et cela ne fonctionne pas comme prévu, mais il y a du travail pour trouver un élément dans l'ombre Dom. Reportez-vous à la suite du lien pour une autre façon de trouver l'élément Shadow Dom. P>
@Nithin, merci pour votre réponse, semble que le PR est toujours ouvert Github.com/angular/proTractor/ Tirez / 4786 Connaissez-vous une autre façon de le faire? Merci
La demande de traction https://github.com/angular/protractor/pull/4786 < / a> n'est pas encore fusionné. J'ai mis en place la solution de contournement suggérée ( https://github.com/angular/proTractor/issues/4367 ) et puis cela a fonctionné. p>