Maison > développement back-end > Tutoriel Python > Comment accélérer les tests Selenium lorsque les scripts lents vous retiennent ?

Comment accélérer les tests Selenium lorsque les scripts lents vous retiennent ?

Susan Sarandon
Libérer: 2024-11-15 16:02:03
original
528 Les gens l'ont consulté

How to Speed Up Selenium Tests When Slow Scripts Are Holding You Back?

Selenium en attente de scripts lents : stratégies et solutions

Le comportement par défaut de Selenium est d'attendre qu'une page soit complètement chargée, ce qui peut entraîner des retards lorsque vous rencontrez des scripts lents. Ce problème devient encore plus évident lorsqu'il s'agit de pages qui tentent perpétuellement de charger des scripts morts ou qui ne répondent pas. Pour surmonter ce défi, nous pouvons modifier la stratégie de chargement des pages de Selenium.

Configuration de pageLoadStrategy

Selenium propose trois options pour pageLoadStrategy :

  • normal : attend que la page entière se charge (par défaut).
  • impatient : attend que la page soit interactive (les éléments sont visibles et peuvent répondre aux événements).
  • aucun : fait n'attendez pas du tout le chargement d'une page.

En configurant pageLoadStrategy, nous pouvons contrôler la durée Selenium attend que les éléments de la page soient disponibles.

Exemple : configuration de pageLoadStrategy pour Firefox

from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

caps = DesiredCapabilities().FIREFOX
caps["pageLoadStrategy"] = "eager"  # Interactive
driver = webdriver.Firefox(desired_capabilities=caps, executable_path=r'C:\path\to\geckodriver.exe')
driver.get("http://google.com")
Copier après la connexion

Exemple : configuration de pageLoadStrategy pour Chrome

from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

caps = DesiredCapabilities().CHROME
caps["pageLoadStrategy"] = "none"  # Do not wait
driver = webdriver.Chrome(desired_capabilities=caps, executable_path=r'C:\path\to\chromedriver.exe')
driver.get("http://google.com")
Copier après la connexion

Remarque : La valeur pageLoadStrategy « impatiente » est actuellement en cours de développement pour ChromeDriver. Reportez-vous à la documentation pour les mises à jour sur son statut.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal