Selenium (informatique)

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Selenium
Image illustrative de l'article Selenium (informatique)

Dernière version 3.5.0 ()
État du projet Actif
Écrit en Java
Environnement multiplateforme
Type Framework
Licence Licence Apache 2.0
Site web http://seleniumhq.org/

Selenium est un framework de test informatique développé en Java.

Il est associé à

  • Selenium IDE, extension Firefox, pour l'utiliser ;
  • Selenium WebDriver, successeur de Selenium Remote Control (RC), officiellement obsolète[1] ; qui permet d'écrire des tests d'automation dans certains langages de programmation (PHP, Python, Ruby, .NET, Perl et Java).

Exemples de tests avec Selenium[modifier | modifier le code]

require_once 'PHPUnit/Extensions/SeleniumTestCase.php';

class CategoryModifTest extends PHPUnit_Extensions_SeleniumTestCase
{
  protected function setUp()
  {
    $this->setBrowser("*firefox");
    $this->setBrowserUrl("http://...");
  }

  public function testCategoryModif()
  {
    $this->open("http://...");
    $this->type("modlgn_username", "admin");
    $this->type("modlgn_passwd", "password");
    $this->click("link=Connexion");
    $this->waitForPageToLoad("30000");
    $this->open("http:.../administrator/index.php?...");
    $this->waitForPageToLoad("30000");
    $name = $this->getTable("//div[@id='element-box']/div[2]/form/table.2.2");
    $this->click("link=".$name);
    $this->waitForPageToLoad("30000");
    $this->type("name", "Ordinateurs portables modifié");
    $this->click("//td[@id='toolbar-save']/a/span");
    $this->waitForPageToLoad("30000");
    try {
        $this->assertTrue($this->isTextPresent("Ordinateurs portables modifié"));
    } catch (PHPUnit_Framework_AssertionFailedError $e) {
        array_push($this->verificationErrors, $e->toString());
    }
    $this->click("link=Ordinateurs portables modifié");
    $this->waitForPageToLoad("30000");
    $this->type("name", "Ordinateurs portables");
    $this->click("//td[@id='toolbar-save']/a/span");
    $this->waitForPageToLoad("30000");
    $this->click("link=Déconnexion");
    $this->waitForPageToLoad("30000");
  }
}

Interopérabilité[modifier | modifier le code]

En PHP, Selenium s'interface avec PHPUnit[2], voire avec Behat (en) en utilisant la bibliothèque Mink[3].

Références[modifier | modifier le code]

  1. « Selenium - Web Browser Automation », sur www.seleniumhq.org (consulté le 20 avril 2017)
  2. Chaine complète de test avec Selenium IDE, Selenium RC et PHPUnit
  3. (en) Junade Ali, Mastering PHP Design Patterns, Packt Publishing Ltd, (lire en ligne)