Comment utiliser les tests Selenium en Python ?
Avec le développement continu des applications Web, les tests automatisés deviennent de plus en plus importants dans le développement de logiciels. Selenium est un outil de test automatisé populaire qui peut simuler les interactions des utilisateurs avec des applications Web pour des tests automatisés. En tant que langage de programmation facile à apprendre et à mettre en œuvre, Python est naturellement largement utilisé dans les tests automatisés de Selenium.
Cet article expliquera comment utiliser Selenium en Python pour les tests automatisés. Tout d’abord, nous devons comprendre les concepts et composants de base de Selenium.
Introduction à Selenium
Selenium est un framework de test automatisé pour les tests d'applications Web. Il implémente des tests en simulant les opérations des utilisateurs dans le navigateur. Selenium prend en charge plusieurs navigateurs, notamment Chrome, Firefox, Safari, etc. Selenium est composé de plusieurs composants, notamment Selenium IDE, Selenium WebDriver, Selenium Grid, etc.
Selenium IDE est un plug-in de navigateur pour l'enregistrement et la lecture des séquences d'action des utilisateurs.
Selenium WebDriver est un composant principal de Selenium qui fournit une API qui permet aux développeurs d'automatiser les tests d'applications Web en écrivant des scripts de test à l'aide de langages de programmation. Actuellement, Selenium WebDriver prend en charge plusieurs langages de programmation, notamment Java, Python, JavaScript, etc.
Selenium Grid est un framework de test distribué qui permet à des scripts de test de s'exécuter sur plusieurs machines pour réaliser une exécution parallèle des tests.
Installer les pilotes Selenium et le navigateur
Avant d'utiliser Python pour les tests Selenium, nous devons d'abord installer les pilotes Selenium et le navigateur. Tout d’abord, installons Selenium. Selenium peut être installé dans un environnement Python à l'aide de la commande suivante :
pip install selenium
Ensuite, nous devons télécharger et installer le pilote du navigateur. Ici, nous prenons le navigateur Chrome comme exemple. Tout d'abord, vous devez télécharger la version correspondante de ChromeDriver à partir de la page de téléchargement de ChromeDriver https://sites.google.com/a/chromium.org/chromedriver/downloads. Assurez-vous que la version que vous téléchargez correspond à la version de Chrome que vous avez installée. Une fois le téléchargement terminé, décompressez le ChromeDriver téléchargé dans un répertoire et ajoutez ce répertoire à la variable d'environnement PATH.
Écrire le script de test Selenium
Ensuite, nous pouvons commencer à écrire le script de test Selenium. Voici un exemple simple qui ouvre une page de recherche Google et recherche le mot-clé « Sélénium ».
from selenium import webdriver # 启动 Chrome 浏览器 driver = webdriver.Chrome() # 打开 Google 搜索页面 driver.get("http://www.google.com") # 查找搜索框元素,并输入关键字 search_box = driver.find_element_by_name("q") search_box.send_keys("Selenium") # 提交搜索请求 search_box.submit() # 关闭浏览器 driver.quit()
Tout d'abord, nous avons importé le module webdriver de Selenium et créé une instance de navigateur Chrome. Ensuite, la page de recherche Google a été ouverte à l'aide de la méthode get(). Ensuite, nous avons recherché l'élément du champ de recherche et saisi le mot-clé de recherche « Selenium » à l'aide de la méthode send_keys(). Enfin, la demande de recherche est soumise à l'aide de la méthode submit() et l'instance du navigateur est fermée en appelant la méthode quit().
Valider les résultats des tests
Dans les tests automatisés, nous devons vérifier si les résultats des tests sont corrects. Selenium offre plusieurs façons de confirmer les résultats des tests. Voici un exemple qui recherche le mot-clé « Selenium » et vérifie si la page de résultats de recherche contient le lien « Selenium – Web Browser Automation ».
from selenium import webdriver import unittest class GoogleSearchTest(unittest.TestCase): def setUp(self): self.driver = webdriver.Chrome() self.driver.get("http://www.google.com") def test_search(self): search_box = self.driver.find_element_by_name("q") search_box.send_keys("Selenium") search_box.submit() self.assertIn("Selenium - Web Browser Automation", self.driver.page_source) def tearDown(self): self.driver.quit() if __name__ == "__main__": unittest.main()
Ce script de test utilise le module unittest de Python et contient une classe de test nommée GoogleSearchTest, qui comporte trois méthodes : setUp(), test_search() et TearDown(). La méthode
setUp() est exécutée avant le démarrage de chaque scénario de test. Elle crée une instance de navigateur Chrome et ouvre la page de recherche Google. La méthode
test_search() recherche le mot-clé "Selenium" et vérifie si la page de résultats de recherche contient le lien "Selenium - Web Browser Automation". Ici, nous utilisons la méthode assertIn() de Python pour vérifier si le code source de la page contient le texte spécifié. La méthode
tearDown() est exécutée après l'exécution de chaque scénario de test. Elle appelle la méthode quit() pour fermer l'instance du navigateur.
Enfin, nous avons utilisé la méthode unittest.main() pour exécuter le script de test.
Conclusion
Dans cet article, nous avons présenté comment utiliser Selenium en Python pour les tests automatisés. En écrivant des scripts de test, nous pouvons utiliser Selenium pour simuler les actions des utilisateurs dans le navigateur afin de tester des applications Web. Selenium prend en charge plusieurs navigateurs et langages de programmation et est flexible et compatible, ce qui le rend idéal pour les tests automatisés.
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!