Quelle est la différence entre les méthodes isDisplayed()
et isVisible()
dans Selenium? Les deux sont utilisés pour identifier si l'élément Web est masqué ou non dans la page Web.
La réponse courte est que isVisible
est la méthode de l'ancien Selenium RC
Et isDisplayed
est la méthode de Selenium 2.
Si vous parlez de WebDrivers
WebElement
, il ne contient que la méthode isDisplayed()
, qui selon la doc:
Cet élément est-il affiché ou non? Cette méthode évite le problème d'avoir à analyser l'attribut "style" d'un élément.
Avant le pilote Web, nous avions Selenium RC, qui est désormais obsolète, la classe DefaultSelenium
avait la méthode isVisible()
qui:
Détermine si l'élément spécifié est visible. Un élément peut être rendu invisible en définissant la propriété CSS "visibilité" sur "caché", ou la propriété "display" sur "aucune", soit pour l'élément lui-même, soit pour ses ancêtres. Cette méthode échouera si l'élément n'est pas présent.
Comme expliqué dans cet article Comment fonctionne la méthode isDisplayed () de Selenium WebDriver
WebDriver a sa propre spécification W3C. et la section sur détermination de la visibilité peut vous donner plus d'informations à partir de la spécification.
Selenium RC - isVisible () - recherche display: none style tag - cela pourrait jeter un pointeur nul si nous ne faisons pas attention ... voir si un élément est visible d'abord vérifier si l'élément est présent en utilisant la méthode isElementPresent (). Essayez ensuite de vérifier si l'élément est visible! Refer Différence entre isElementPresent et isVisible dans Selenium RC