2010-09-17 5 views

Répondre

2

Ce que vous voulez, c'est la méthode is_visible. Ci-dessous vous attendra pendant 30 secondes pour devenir visible

!30.times{ break if (@selenium.is_visible("locator") rescue false); sleep 1 } 
0

wait_for_element(locator, options={})

attente pour un élément d'être présent (le temps d'attente dans le côté du navigateur happenning).

+0

présent signifie qu'il existe dans le DOM, cela ne signifie pas qu'il est visible –

0

suis tombé sur le même problème en utilisant Watir, présent? ne fonctionne que si l'élément est visible. Pour attendre un élément invisible apparaisse, vous pouvez le faire dans Watir

Watir::Wait.until { browser.div(:class => "loaded").exists? } 

existe? renvoie true si l'élément est dans le DOM, ne se soucie pas de la visibilité

Questions connexes