Fermer

décembre 31, 2024

Guide du débutant pour exécuter des tests Selenium sur BrowserStack à l’aide de Pytest / Blogs / Perficient

Guide du débutant pour exécuter des tests Selenium sur BrowserStack à l’aide de Pytest / Blogs / Perficient


Dans le monde d’aujourd’hui, tester les applications Web sur plusieurs navigateurs et appareils est essentiel. L’un des meilleurs outils pour cela est Pile de navigateurune plate-forme basée sur le cloud qui vous permet d’exécuter des tests Selenium sur divers navigateurs et appareils réels. Dans ce blog, nous vous guiderons à travers le processus d’intégration Pile de navigateur avec Python Sélénium et exécuter des tests en utilisant Pytest.

Qu’est-ce que BrowserStack ?

BrowserStack est une plateforme de test basée sur le cloud qui vous permet d’exécuter des tests automatisés sur de vrais navigateurs et appareils, sans avoir besoin de configurer vous-même l’infrastructure. Il prend en charge divers navigateurs comme Chrome, Firefox, Safari, Edge et même les appareils mobiles comme les iPhones et les téléphones Android.

Pile de navigateur

Pourquoi utiliser BrowserStack avec Selenium ?

Selenium est un outil largement utilisé pour automatiser les navigateurs, et avec Pile de navigateurvous pouvez exécuter vos tests Selenium sur une large gamme de navigateurs et de systèmes d’exploitation. Cela garantit que votre application fonctionne de manière transparente dans différents environnements sans avoir besoin de maintenir votre propre infrastructure de test.

Dans ce guide, nous utiliserons Pytest-un framework de test populaire pour Python-pour exécuter des tests. Cette combinaison offre un moyen efficace et flexible d’effectuer des tests multi-navigateurs.

Conditions préalables

Avant de commencer, assurez-vous que les éléments suivants sont installés :

  1. Python (Version 3 ou supérieure)
  2. Sélénium: Installez-le via pip
    pip installer le sélénium
  3. Pytest: Installez-le via pip
    pip installer pytest
  4. Compte BrowserStack: Inscrivez-vous sur Pile de navigateur et obtenez votre nom d’utilisateur et clé d’accès.

Étape 1 : configurer BrowserStack

Une fois que vous avez un compte sur BrowserStack, vous pouvez trouver votre nom d’utilisateur et clé d’accès à partir du tableau de bord BrowserStack.

Vous utiliserez ces informations d’identification pour authentifier vos tests Selenium sur BrowserStack.

Étape 2 : configurer Selenium pour utiliser BrowserStack

Pour configurer votre Selenium WebDriver pour qu’il s’exécute sur BrowserStack, vous devez spécifier l’URL distante de BrowserStack, vos informations d’identification et les fonctionnalités souhaitées du navigateur ou de l’appareil sur lequel vous souhaitez tester.

Voici comment le configurer :

from selenium import webdriver
from selenium.webdriver.common.by import By
import pytest
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

# BrowserStack credentials
username = "your_browserstack_username"
access_key = "your_browserstack_access_key"

# Desired capabilities to run the test
desired_cap = {
    'browser': 'Chrome',
    'browser_version': 'latest',
    'os': 'Windows',
    'os_version': '10',
    'name': 'Python Selenium BrowserStack Test'  # Test name
}

# BrowserStack URL
url = f"https://{username}:{access_key}@hub-cloud.browserstack.com/wd/hub"

# Pytest Fixture to initialize the driver
@pytest.fixture(scope="function")
def driver():
    driver = webdriver.Remote(
        command_executor=url,
        desired_capabilities=desired_cap
    )
    yield driver
    driver.quit()

# Sample Test Case using Pytest
def test_browserstack(driver):
    driver.get("https://www.browserstack.com")
    assert "BrowserStack" in driver.title

    # Example of interaction
    search_box = driver.find_element(By.NAME, "q")
    search_box.send_keys("Selenium Python")
    search_box.send_keys(Keys.RETURN)

    # Assert something to validate test
    assert "Selenium" in driver.page_source

Points clés :

  • nom d’utilisateur et clé_d’accès: Ces valeurs authentifient votre test sur BrowserStack.
  • cap_désiré: Ce dictionnaire définit la configuration du navigateur et du système d’exploitation sur lesquels vous souhaitez tester.
    • navigateur : Le navigateur que vous souhaitez tester (Chrome, Firefox, etc.).
    • browser_version : version du navigateur (par exemple, « dernière » ou « 90 »).
    • os : système d’exploitation sur lequel vous souhaitez exécuter les tests (Windows, macOS, Linux).
    • os_version : version du système d’exploitation.
    • name : un nom personnalisé pour le test.

Étape 3 : Exécuter le test avec Pytest

Pour exécuter les tests avec Pytest, utilisez simplement la commande suivante dans votre terminal :

pytest test_browserstack.py

Cela déclenchera le test sur BrowserStack et vous pourrez afficher les résultats directement sur le tableau de bord BrowserStack.

Étape 4 : Affichage des résultats des tests sur BrowserStack

Une fois vos tests terminés, vous pourrez visiter le Tableau de bord BrowserStack pour afficher des journaux détaillés, des captures d’écran et des vidéos des tests. Cela peut aider à déboguer tout problème avec votre application.

Conclusion

L’intégration de BrowserStack avec Python Selenium et Pytest est un moyen puissant de garantir que votre application Web fonctionne sur différents navigateurs et appareils. En utilisant la plate-forme basée sur le cloud BrowserStack, vous pouvez éviter les tracas liés à la configuration de plusieurs environnements de test et vous concentrer sur l’écriture de tests efficaces. Grâce aux capacités de test simples mais efficaces de Pytest, vous pouvez exécuter vos tests multi-navigateurs de manière fluide et efficace.

Si vous rencontrez des problèmes lors de l’installation ou de l’exécution, assurez-vous de consulter la documentation de BrowserStack pour le dépannage et les options de configuration avancées.

Bons tests !






Source link