Poum - Mot-clé - APIDe la qualité logicielle, méthodes agiles et outils logiciels libres ...2023-08-25T16:53:12+01:00Poumurn:md5:6b5c625a812aff31ffa1cd1f3648e14bDotclearUtiliser Selenium 2 avec Mavenurn:md5:7f652808f1bc69eb34fa42849fe256fd2012-01-28T10:32:00+01:002012-01-31T16:58:41+01:00PoumQualité logicielleAPIMavenSelenium 2Selenium serverWebDriver<p><img src="http://philippe.poumaroux.free.fr/public/selenium-logo.png" alt="selenium-logo.png" title="selenium-logo.png, janv. 2012" /> <img src="http://philippe.poumaroux.free.fr/public/maven-logo.png" alt="Logo Maven" title="Logo Maven, janv. 2012" /></p>
<p>Traduction de l'article de Michael Tamm sur le blog Selenium.</p>
<p>Il y a plusieurs façon d'utiliser <a href="http://philippe.poumaroux.free.fr/index.php?tag/Selenium%202">Selenium 2</a>:</p>
<p>Si vous n'avez pas de code datant de Selenium 1.x, utilisez directement les nouvelles implémentations <a href="http://philippe.poumaroux.free.fr/index.php?tag/WebDriver">WebDriver</a> telles que ChromeDriver, HtmlUnitDriver, FirefoxDriver ou InternetExplorerDriver qui fournissent une <a href="http://philippe.poumaroux.free.fr/index.php?tag/API">API</a> agréable, légère et facile à apprendre.</p>
<p>Si vous avez ce type de code, vous pouvez continuer à utiliser la désormais célèbre classe DefaultSelenium ou la nouvelle WebDriverBackedSelenium qui hérite de la précédente mais utilise en interne l'une des implémentation WebDriver.</p> <p>Quelle que soit l'option que vous préférez, si vous devez utiliser <a href="http://philippe.poumaroux.free.fr/index.php?tag/Maven">Maven</a>, tout ce dont vous avez besoin est d'ajouter la dépendance suivant à votre pom.xml:</p>
<pre> <dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium</artifactId>
<version>2.18.0</version>
</dependency></pre>
<p>Si vous savez que vous n'allez utiliser qu'une seule des implémentations WebDriver, par exemple FirefoxDriver, vous n'avez pas besoin de dépendre de l'artifact selenium (qui possède des dépendances à toutes les implémentations WebDriver ainsi qu'à toutes les classes support). Au lieu de ça, vous pouvez vous contenter d'ajouter la dépendance au seul artifact dont vous avez besoin, par exemple:</p>
<pre> <dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-firefox-driver</artifactId>
<version>2.18.0</version>
</dependency></pre>
<p>Quand vous utilisez une implémentation WebDriver, il n'est pas nécessaire de lancer un serveur Selenium - le navigateur va démarrer directement et sera télécommandé.</p>
<p>Mais si vous utilisez DefaultSelenium (ou l'implémentation RemoteWebDriver), vous aurez besoin de lancer un serveur Selenium.</p>
<p>Le meilleur moyen de procéder consiste à télécharger le jar autonome <a href="http://philippe.poumaroux.free.fr/index.php?tag/Selenium%20server">Selenium server</a> et de simplement l'utiliser.
Encore mieux, vous pouvez embarquer le serveur Selenium dans votre projet en ajoutant la dépendance suivante à votre pom.xml:</p>
<pre> <dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
<version>2.18.0</version>
</dependency></pre>
<p>Maintenant, vous pouvez créer vous-même une instance de SeleniumServer et la lancer.
Attention, notez que l'artifact selenium-server possède une dépendance à l'artifact servlet-api-2.5 que vous devrez exclure si votre projet doit être exécuté dans un conteneur d'application web.</p>
<p>Source: <a href="http://seleniumhq.wordpress.com/2010/07/30/how-to-use-selenium-2-with-maven/" title="http://seleniumhq.wordpress.com/2010/07/30/how-to-use-selenium-2-with-maven/">http://seleniumhq.wordpress.com/201...</a> sur le blog officiel Selenium: <a href="http://seleniumhq.wordpress.com" title="http://seleniumhq.wordpress.com">http://seleniumhq.wordpress.com</a></p>