Question

Je suis en train de frapper un lien dans une table-ligne qui contient des liens multiples. Ce modèle est utilisé dans la table.

Cela fonctionne:

browser.wait_for(:element => "css=tr:nth-child(1) li:nth-child(2) > a")

Cela ne:

browser.click "css=tr:nth-child(1) li:nth-child(2) > a"

Toutes les idées pourquoi cela pourrait être? J'utilise le sélénium rubygem client.

Était-ce utile?

La solution

Je soupçonne que cela est dû à un bogue dans cssQuery, qui Sélénium utilise actuellement pour localiser des éléments par CSS. Les détails de la question et un patch se trouvent dans les commentaires de la question suivante: http: // jira.openqa.org/browse/SEL-698

Hope that helps - Je crois que Sélénium 2 utilisera une autre bibliothèque pour CSS localisateurs - peut-être Sizzle de JQuery ( http: // sizzlejs.com/ ), ce qui devrait résoudre ce problème.

Dave.

Autres conseils

Pour éviter les problèmes CSS douloureux comme ça, je l'ai installé jQuery comme une extension de l'utilisateur. Il donne la possibilité de définir un localisateur chaîne similaire à CSS ( « jquery = td.dt-col-état div.dt-liner: contient ( « complète ») ») qui est beaucoup plus puissant. Je peux développer sur la façon dont je l'ai fait pour Java RC si vous le souhaitez.

Ceci est un bogue dans le sélénium 1 Je voudrais essayer d'écrire le chemin complet dans votre chemin de css et voir si cela aide.

ex si vous utilisez le code HTML suivant, vous pouvez utiliser le localisateur suivant
css     

    <table>
        <tr>
            <td>
                <li>
                    <a href="/yourlink" >
</li> </td> </tr> </table>

"css=tr:nth-child(1) > td > li:nth-child(2) > a"

Si cela ne fonctionne pas, vous pouvez toujours utiliser XPath. Il est tout aussi expressif que localisateurs CSS, mais a tendance à avoir moins de défauts. La seule chose que vous devez garder à l'esprit lors de l'utilisation XPath est qu'ils sont généralement plus lents que localisateurs css.

"xpath=//tr/td//li[2]/a" 
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top