11
votes

Protractor Trouver un élément par balise à l'intérieur d'un div

J'ai une DIV dans une page HTML dont le nom est toujours connu et à l'intérieur de cette div il y a une HREF, dont les détails ne sont pas connus. Ce pourrait être l'enfant direct du parent ou pourrait être un autre petit-enfant. Regarde quelque chose comme ceci: XXX PRE>

Je sais qu'il n'y aura qu'un seul lien dans cette div. Je souhaite donc trouver le lien unique et cliquer dessus. P>

J'ai essayé ce qui suit, mais cela ne semble pas fonctionner: p>

    element(by.classname('divName')).find('a').click();


2 commentaires

Je ne comprends pas ce que le problème est exactement. Ce lien est-il créé de manière dynamique ou est-il codé dur?


créé de manière dynamique serait un bon moyen de le regarder. Fondamentalement, je ne sais jamais ce qui va être dans le lien, sauf que c'est un , donc je voudrais naviguer vers la div, puis au seul lien de la div et que j'ai du mal à comprendre la syntaxe pour cette.


4 Réponses :


0
votes

Une réponse à une ligne

Essayez avec élément ('. Divonnez A'). Cliquez sur ();


1 commentaires

Vous devez transmettre un localisateur sur l'élément Finder: élément (by.xxx ())



30
votes
$('.divName a').click();

1 commentaires

ou élément (by.css ('. Classa, .Classb, .Classc a'))). Cliquez sur (); pour plus de cours



1
votes

a compris une solution:

ptor.findElement(protractor.By.className('clsName'))
    .findElements(protractor.By.tagName('a'))
    .then(function(links){
        links[0].click();
        //place expects here, otherwise it will run async and your expects will be hit 
        //before the lookup
});


0 commentaires

-2
votes

Il semble que l'erreur de syntaxe dans votre code

utilise ce xxx


0 commentaires