2010-12-01 10 views
6

Je souhaite utiliser XPath (ou un autre localisateur DSL Selenium) pour accéder à iframe créé dynamiquement. Mon but est de faire quelques affirmations sur le contenu de cette iframe dynamique.Accéder au contenu de l'iframe généré dynamiquement dans Selenium

Le iframe ne dispose pas d'un ID et ne dispose que les attributs HTML suivant:

src="javascript:""" style="position: absolute; left: -2000px;" 

Si je peux selectFrame en quelque sorte que iframe, alors je peux assertText ou utiliser XPath pour tester les iframe entrailles.

Cependant, les approches simples semblent échouer. Le selectFrame("index=0") échoue pour une raison quelconque. Peut-être faudrait-il que j'appelle waitFor pour que le iframe soit chargé. Mais je n'arrive pas à créer l'identifiant du localisateur pour le iframe, donc je ne peux pas le waitFor.

+0

Je vais avoir le même problème et n'arrive pas à le faire fonctionner. Les conseils de docs ne semblent pas aider, et il n'y a pas beaucoup de commentaires dans les journaux pour l'IDE ou le client Java RC. – Adam

Répondre

6

Avez-vous essayé ces conseils de Selenium docs?

SelectFrame (locator) Sélectionne une image dans la fenêtre en cours. (Vous pouvez appeler cette commande plusieurs fois pour sélectionner des images imbriquées.) Pour sélectionner la trame parent, utilisez "parent = parent" comme localisateur; à sélectionnez le cadre supérieur, utilisez "relatif = top". Vous pouvez également utiliser une expression DOM pour identifier l'image que vous voulez directement, comme ceci:. dom = cadres [ "principales"] cadres [ "sous-trame"]

http://release.seleniumhq.org/selenium-core/0.8.0/reference.html