2010-02-03 11 views
0

Je vois un problème dans Selenium avec IE6/8 qui me donne du fil à retordre. Le problème est que les propriétés de la fenêtre DOM ne sont pas mises à jour une fois les actions terminées et renvoient toujours les valeurs par défaut.Les valeurs Selenium Dom ne sont pas mises à jour

Pour vous donner quelques exemples:

  1. Browser est d'abord lancé en taille normale (document.body.clientHeight = 500px). Après que je fais la fenêtre maximisant, la propriété reste 500px!

  2. défiler vers le haut offset (document.body.scrollop) est d'abord 0, je puis ne le défilement, quand j'accéder à la propriété est à 0!

Quelqu'un a déjà vu ce problème ou sait-il ce qui le cause?

+1

pouvez-vous mettre comment vous accédez au navigateur car je pense que * peut * être le problème. Selenium enveloppe l'objet fenêtre qui peut causer un problème lors de l'accès normaux au DOM JavaScript – AutomatedTester

+0

Ici ... ISelenium selenium = nouveau DefaultSelenium ("localhost", 4444, "* iexplore", destinationUri.AbsoluteUri.ToString()); selenium.GetEval ("window.scrollBy (0,50)"); int décalage = Convert.ToInt32 (selenium.GetEval ("documnet.body.scrollTop")); – KGR

Répondre

1

Pour accéder à l'objet Fenêtre et document dans le test Sélénium, vous devez mettre this.browserbot.getUserWindow(). Il vous donne accès à la page sur laquelle Selenium travaille.

int offset = Convert.ToInt32(selenium.GetEval("this.browserbot.getUserWindow().document.body.scrollTop")); 
+0

Génial, cela a résolu mon problème. Merci! – KGR

Questions connexes