Maison >Java >javaDidacticiel >Comment implémenter le défilement des pages dans Selenium WebDriver à l'aide de Java ?

Comment implémenter le défilement des pages dans Selenium WebDriver à l'aide de Java ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-19 00:20:02399parcourir

How do I implement page scrolling in Selenium WebDriver using Java?

Défilement de page dans Selenium WebDriver (Selenium 2) Utilisation de Java

Le défilement de page joue un rôle crucial dans l'automatisation de pages Web avec des longueurs de contenu variables. Selenium 1 (Selenium RC) et Selenium 2 (WebDriver) proposent différentes approches pour le défilement des pages. Explorons les méthodes équivalentes pour Selenium WebDriver :

Défilement vers le haut ou vers le bas

Dans Selenium 1, le code pour le défilement des pages était :

selenium.getEval("scrollBy(0, 250)");

Pour effectuer la même action dans Selenium 2 (WebDriver), utilisez ce qui suit code :

WebDriver driver = new FirefoxDriver();
JavascriptExecutor jse = (JavascriptExecutor)driver;
jse.executeScript("window.scrollBy(0,250)");

Vous pouvez également utiliser :

jse.executeScript("scroll(0, 250);");

Pour faire défiler vers le haut, annulez simplement la valeur du pixel :

jse.executeScript("window.scrollBy(0,-250)");

Défilement vers le bas de la Page

Pour faire défiler vers le bas de la page, vous disposez de plusieurs options :

Utilisation de JavaScriptExecutor :

jse.executeScript("window.scrollTo(0, document.body.scrollHeight)");

Utilisation des touches de fin Ctrl :

driver.findElement(By.cssSelector("body")).sendKeys(Keys.CONTROL, Keys.END);

Utilisation Classe de robot Java :

Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_END);
robot.keyRelease(KeyEvent.VK_END);
robot.keyRelease(KeyEvent.VK_CONTROL);

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn