[PYTHON] Selenium Webdriver Résumé des méthodes de fonctionnement fréquemment utilisées

introduction

Bonjour. C'est @mochio de QA. Cet article est le 20e jour du Calendrier de l'Avent LIFULL 2017.

Nous effectuons des tests automatiques dans notre entreprise, et nous y utilisons Selenium. Veuillez vous référer à divers articles sur Selenium. Je l'ai fait pour l'organiser car cela devient confus car le style d'écriture est un peu différent entre les langues.

Lancer un navigateur avec une URL spécifique

Java


driver.get("URL");

C#


driver.Url = "URL";

Python


driver.get("URL")

Ruby


driver.get("URL") 

Lorsque vous souhaitez changer de page

Java


driver.navigate().to("URL");

C#


driver.Navigate().GoToUrl("URL");

Python


driver.get("URL")

Ruby


driver.navigate.to("URL") 

Quand tu veux revenir en arrière

Java


driver.navigate().back();

C#


driver.Navigate().Back();

Python


driver.back()

Ruby


driver.navigate.back 

Quand tu veux avancer

Java


driver.navigate().forward();

C#


driver.Navigate().Forward();

Python


driver.forward()

Ruby


driver.navigate.forward 

Mettre à jour le navigateur

Java


driver.navigate().refresh();

C#


driver.Navigate().Refresh();

Python


driver.refresh()

Ruby


driver.navigate.refresh

Lorsque vous souhaitez connaître l'URL actuelle

Java


driver.getCurrentUrl()

C#


driver.Url;

Python


driver.current_url

Ruby


driver.current_url

Quand tu veux connaître le titre

Java


driver.getTitle():

C#


driver.Title;

Python


driver.title

Ruby


driver.title

Lorsque vous souhaitez obtenir la source d'une page

Java


driver.getPageSource();

C#


driver.PageSource;

Python


driver.page_source

Ruby


driver.page_source

Lorsque vous souhaitez fermer la fenêtre

Java


driver.close();

C#


driver.Close();

Python


driver.close()

Ruby


driver.close

Lorsque vous souhaitez fermer toutes les fenêtres

Java


driver.quit();

C#


driver.Quit();

Python


driver.quit()

Ruby


driver.quit

Lorsque vous voulez obtenir un élément

Java


driver.findElement(By.className("classname")); //Spécifiez par classe
driver.findElement(By.id("id")); //Spécifiez par identifiant
driver.findElement(By.xpath("xpath")); //Spécifiez par xpath

C#


driver.FindElement(By.ClassName("classname")); //Spécifiez par classe
driver.FindElement(By.Id("id")); //Spécifiez par identifiant
driver.FindElement(By.Xpath("xpath")); //Spécifiez par xpath

Python


driver.find_element_by_class_name("classname") #Spécifiez par classe
driver.find_element_by_id("id") #Spécifiez par identifiant
driver.find_element_by_xpath("xpath") #Spécifiez par xpath

Ruby


driver.find_element(:class, "classname") #Spécifiez par classe
driver.find_element(:id, "id") #Spécifiez par identifiant
driver.find_element(:xpath, "xpath") #Spécifiez par xpath

Lorsque vous souhaitez cliquer sur un élément

Java


driver.findElement(By.XPath("XPATH")).click();

C#


driver.FindElement(By.XPath("XPATH")).Click();

Python


driver.find_element_by_xpath("XPATH").click()

Ruby


driver.find_element(:xpath, "XPATH").click

Lorsque vous souhaitez faire défiler jusqu'à un élément

Java


WebElement element = driver.findElement(By.id("ID"));
Actions actions = new Actions(driver);
actions.moveToElement(element);
actions.perform();

C#


var element = driver.FindElement(By.id("ID"));
Actions actions = new Actions(driver);
actions.MoveToElement(element);
actions.Perform();

Python


from selenium.webdriver.common.action_chains import ActionChains

element = driver.find_element_by_id("ID")
actions = ActionChains(driver)
actions.move_to_element(element)
actions.perform()

Ruby


driver.find_element(:id, "ID").location_once_scrolled_into_view

Lorsque vous souhaitez sélectionner une liste déroulante

Java


element = driver.findElement(By.xpath("xpath"));
Select(element).selectByIndex(indexnum); //Sélectionnez par index
Select(element).selectByValue("value"); //valeur de valeur
Select(element).selectByVisibleText("text"); //Afficher le texte

C#


element = driver.FindElement(By.Xpath("xpath"));
Select(element).SelectByIndex(indexnum); //Sélectionnez par index
Select(element).SelectByValue("value"); //valeur de valeur
Select(element).SelectByText("text"); //Afficher le texte

Python


element = driver.find_element_by_xpath("xpath")
Select(element).select_by_index(indexnum) #Sélectionnez par index
Select(element).select_by_value("value") #valeur de valeur
Select(element).select_by_visible_text("text") #Afficher le texte

Ruby


element = driver.find_element(:xpath, "xpath")
Select(element).select_by(:index, indexnum) #Sélectionnez par index
Select(element).select_by(:value, "value") #valeur de valeur
Select(element).select_by(:text, "string") #Afficher le texte

Lorsque vous souhaitez saisir du texte

Java


driver.findElement(By.id("ID")).sendKeys("string");

C#


driver.FindElement(By.id("ID")).SendKeys("string");

Python


driver.find_element_by_id("ID").send_keys("strings")

Ruby


driver.find_element(:id, "ID").send_keys("strings")

Lorsque vous voulez obtenir le texte

Java


driver.findElement(By.id("ID")).getText();

C#


driver.FindElement(By.id("ID")).Text;

Python


driver.find_element_by_id("ID").text

Ruby


driver.find_element(:id, "ID").text

Lorsque vous souhaitez obtenir des attributs

Java


driver.findElement(By.id("ID")).getAttribute("value");

C#


driver.FindElement(By.id("ID")).GetAttribute("value");

Python


driver.find_element_by_id("ID").get_attribute("value")

Ruby


driver.find_element(:id, "ID").attribute("value")

Lorsque vous souhaitez gérer les alertes

Java


driver.switchTo().alert().accept();

C#


driver.SwitchTo().Alert().Accept();

Python


Alert(driver).accept()

Ruby


driver.switch_to.alert.accept

Lorsque vous souhaitez maximiser la taille de la fenêtre

Java


driver.manage().window().maximize();

C#


driver.Manage().Window().Maximize();

Python


driver.maximize_window()

Ruby


driver.manage.window.maximize

Lorsque vous souhaitez déterminer si un élément est visible

Java


driver.findElement(By.xpath("xpath")).isDisplayed();

C#


driver.FindElement(By.Xpath("xpath")).Displayed(); 

Python


driver.find_element_by_xpath("xpath").is_displayed()

Ruby


driver.find_element(:xpath, "xpath").displayed?

Lorsque vous souhaitez déterminer si un élément est valide

Java


driver.findElement(By.xpath("xpath")).isEnabled();

C#


driver.FindElement(By.Xpath("xpath")).Enabled(); 

Python


driver.find_element_by_xpath("xpath").is_enabled()

Ruby


driver.find_element(:xpath, "xpath").enabled?

Lorsque vous souhaitez déterminer si un élément est sélectionné

Java


driver.findElement(By.xpath("xpath")).isSelected();

C#


driver.FindElement(By.Xpath("xpath")).Selected(); 

Python


driver.find_element_by_xpath("xpath").is_selected()

Ruby


driver.find_element(:xpath, "xpath").selected?

en conclusion

Je l'ai fait et je l'ai vu, mais tout était similaire. Je vous serais reconnaissant si vous pouviez signaler des erreurs. Nous l'ajouterons au besoin sur demande. Veuillez me faire savoir s'il existe d'autres méthodes utiles que vous pouvez utiliser: arc:

Recommended Posts

Selenium Webdriver Résumé des méthodes de fonctionnement fréquemment utilisées
Python + Selenium Résumé des méthodes d'opération fréquemment utilisées
Méthodes fréquemment utilisées de sélénium et de belle soupe
[Anaconda3] Résumé des commandes fréquemment utilisées
Résumé des commandes fréquemment utilisées de django (débutant)
Résumé des méthodes fréquemment utilisées chez les pandas
Résumé des commandes fréquemment utilisées dans matplotlib
Liste des fonctions et méthodes intégrées fréquemment utilisées
Résumé des tableaux Python fréquemment utilisés (pour moi-même)
Résumé des commandes fréquemment utilisées (avec petit commentaire)
Récapitulatif des méthodes Pandas utilisées lors de l'extraction de données [Python]
[Python] Introduction au scraping WEB | Résumé des méthodes pouvant être utilisées avec webdriver
Résumé de la relation de grattage (sélénium, pyautogui)
[Linux] Commandes Linux fréquemment utilisées (opération sur fichier)
[Linux] Commandes Linux fréquemment utilisées (opération de dossier)
[Linux] Examen des commandes de base fréquemment utilisées 2
[Linux] Examen des commandes de base fréquemment utilisées
Résumé des méthodes intégrées, etc. de la liste Python
Fonctionnement automatique de Chrome avec Python + Sélénium + pandas
Résumé de ce qui a été utilisé dans 100 coups de Pandas (# 1 ~ # 32)
Résumé des outils utilisés dans la ligne de commande vol.8
Résumé des outils utilisés dans la ligne de commande vol.5
Résumé des fonctions d'évaluation utilisées dans l'apprentissage automatique
[Commande Linux] Un mémorandum des commandes fréquemment utilisées
Résumé des méthodes de gestion des erreurs lors de l'installation de TensorFlow (2)
Résumé des méthodes d'analyse de données statistiques utilisant Python qui peuvent être utilisées en entreprise
[Introduction à Python] Résumé des fonctions et méthodes qui apparaissent fréquemment en Python [Format du problème]
Notez les options fréquemment utilisées dans Python + Selenium + Chrome
Une collection de commandes fréquemment utilisées dans la gestion des serveurs
Tableau de comparaison des processus fréquemment utilisés de Python et Clojure
Afficher une liste des commandes fréquemment utilisées sur Zsh