Débuter avec le sélénium

Test de sélénium simple en Java

Le code ci-dessous est un programme Java simple utilisant du sélénium. Le parcours du code ci-dessous est

  1. Ouvrez le navigateur Firefox

  2. Ouvrez la page Google

  3. Imprimez le titre de la page Google

  4. Trouver l’emplacement du champ de recherche

  5. Passez la valeur Selenium dans le champ de recherche

  6. Soumettez le formulaire

  7. Fermez le navigateur

    package org.openqa.selenium.example;

    import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; import java.util.concurrent.TimeUnit;

    public class Selenium2Example { public static void main(String[] args) { // Create a new instance of the Firefox driver WebDriver driver = new FirefoxDriver();

         // An implicit wait is to tell WebDriver to poll the DOM for a certain amount of time 
         // when trying to find an element or elements if they are not immediately available. 
         // The default setting is 0. Once set, the implicit wait is set for the life of the WebDriver object instance.   
         driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
    
         // Maximize the browser window to fit into screen
         driver.manage().window().maximize();
    
         // Visit Google
         driver.get("http://www.google.com");
    
         // Check the title of the page
         System.out.println("Page title is: " + driver.getTitle());
    
         // Find the text input element by its name
         WebElement element = driver.findElement(By.name("q"));
    
         // Enter something to search for
         element.sendKeys("Selenium!");
    
         // Now submit the form. WebDriver will find the form for us from the element
         element.submit();
    
         //Close the browser
         driver.quit();
     }
    

    }

Exemple simple de sélénium en C#

//Create a new ChromeDriver
IWebDriver driver = new ChromeDriver();

//Navigate to www.google.com
driver.Navigate().GoToUrl("https://www.google.com");

//Find the WebElement of the search bar
IWebElement element = driver.FindElement(By.Name("q"));

//Type Hello World into search bar
element.SendKeys("Hello World");

//Submit the input
element.Submit();

//Close the browser
driver.Quit();

Test de sélénium simple en python

from selenium import webdriver

# Create a new chromedriver
driver = webdriver.Chrome()

# Go to www.google.com
driver.get("https://www.google.com")

# Get the webelement of the text input box
search_box = driver.find_element_by_name("q")

# Send the string "Selenium!" to the input box
seach_box.send_keys("Selenium!")

# Submit the input, which starts a search
search_box.submit()

# Wait to see the results of the search
time.sleep(5)

# Close the driver
driver.quit()

Configuration de python Selenium via un terminal (BASH)

Le moyen le plus simple consiste à utiliser [pip][1] et [VirtualEnv][2]. Le sélénium nécessite également [python 3.*][3].

Installez virtualenv en utilisant :

$: pip install virtualenv

Créez/entrez un répertoire pour vos fichiers Selenium :

$: cd my_selenium_project

Créez un nouveau VirtualEnv dans le répertoire de vos fichiers Selenium :

$: virtualenv -p /usr/bin/python3.0 venv

Activez l’environnement virtuel :

$: source venv/bin/active

Vous devriez maintenant voir voir (venv) au début de chaque ligne bash. Installez Selenium en utilisant pip :

$: pip install selenium

Selenium est fourni avec le pilote FireFox par défaut.
Si vous souhaitez exécuter Selenium dans Google Chrome, procédez également comme suit :

$: pip install chromedriver

Vous avez maintenant un VirtualEnv contrôlé par version. Pour vous assurer que tout est correctement configuré :

Démarrez Python :

$: python

Imprime :

Python 2.7.10 (default, Jul 14 2015, 19:46:27) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

Créez un nouveau pilote Web (dans ce cas, un pilote chrome) et accédez à www.google.com :

>>> from selenium import webdriver
>>> driver = webdriver.Chrome()
>>> driver.get("https://www.google.com")

Fermez le pilote et l’interpréteur Python :

>>> driver.quit()
>>> quit()

Désactivez le VirtualEnv :

$: deactivate

Si la ligne driver = webdriver.Chrome() génère des erreurs :

  • Assurez-vous que le navigateur Chrome est également installé. Si vous ne le faites pas, le pilote chrome Selenium ne peut pas accéder au binaire Chrome.
  • webdriver.Chrome() peut également prendre un paramètre pour l’emplacement de votre chromedriver. Si vous l’avez installé en utilisant pip, essayez (sur mac) driver = webdriver.Chrome("./venv/selenium/webdriver/chromedriver").

[1] : https://pypi.python.org/pypi/pip [2] : http://docs.python-guide.org/en/latest/dev/virtualenvs/ [3] : https://www.python.org/download/releases/3.0/