Lorsqu’on développe un site web, il arrive un moment où l’on a besoin de tester que le site fonctionne de la manière attendue. Evidemment, on peut tout faire soit même, cliquer voir ce qui se passe… Mais lorsqu’on travaille sur de gros projets, cette activité peut être très vite rébarbative. Heureusement, il est possible d’automatiser ces tests. L’un des outils qui permet de réaliser cette tâche est Selenium. Je vous montre comment faire très simplement.
Les prérequis sont: avoir Visual Studio avec Nuget installé et le Webserver de Selenium.
- Dans sa solution, créer un projet de test.
- Installer les packages NuGet Selenium.WebDriver et Selenium.Support dans le projet de test
- Dans le fichier .cs de test unitaire ajouter les directives
- Utiliser le code suivant, par exemple
- Il faut que le le mode protégé soit activé pour tous les profils dans les options d’Internet Explorer pour que ça marche.
- Faites un clic droit sur votre méthode et lancer le test
- Voilà le résultat
using OpenQA.Selenium; using OpenQA.Selenium.IE;
[TestMethod] public void TestMethod1() { // initialisation du web driver, le chemin en paramètre est celui où se trouve le fichier IEDriverServer.exe IWebDriver _driver = new InternetExplorerDriver(@"D:\Users\Daniel\Downloads\"); // se rend à la page www.google.fr _driver.Navigate().GoToUrl("http://www.google.fr"); /* recherche sur la page l'élément dont le nom est q et y rentre rien, dans notre exemple c'est la textbox de recherche google */ _driver.FindElement(By.Name("q")).SendKeys("rien"); // lance la recherche _driver.FindElement(By.Name("q")).Submit(); // le test réussit si on trouve un lien dont le texte est Rien - Wikipédia bool res = true; try { _driver.FindElement(By.LinkText("Rien - Wikipédia")); } catch { res = false; } Assert.IsTrue(true); }
Voilà comment simplement tester son site sur Internet Explorer avec Selenium en C#. Je n’ai fait que donner un exemple mais il est possible de faire énorméméent de choses avec Sélénium et même d’utiliser d’autres browsers. Le site Selenium HQ regorge d’exemples. Avec Firefox, je conseille l’excellent Addon Selenium IDE, qui simplifie le travail en proposant une IDE. Il propose égaelemnt un outil qui convertit les commandes créés avec l’IDE en C#. Pas mal si vous ne voulez pas vous taper la doc.
Laisser un commentaire