Tests Selenium sur C# sous Linux

Automatisation des tests d'applications Web à l'aide Sélénium une solution courante parmi les développeurs d'autotests, et C# l'un des langages de programmation les plus populaires, la combinaison de ces outils ne soulève donc aucune question. Pour développer à l'aide de ces technologies, des logiciels propriétaires populaires de Microsoft pour Windows sont souvent utilisés, mais je souhaitais savoir quels analogues gratuits peuvent être utilisés sans sortir de la pile Selenium + C# pour cette tâche.

Comme je n'ai trouvé aucun article en russe sur ce sujet, je partagerai mon expérience de mise en place d'un environnement pour développer et déboguer des autotests en C# sous Linux.

Le système d'exploitation utilisé était Kubuntu 18.04 64 bits avec le noyau Linux 4.15.0-99-generic, installé à partir d'une image ISO téléchargée depuis site officiel. Je pense que n'importe quelle distribution Linux moderne et assez populaire fera l'affaire.

La version 6.6.0.166 du compilateur Mono JIT a fait office de CLR pour C#. Son installation consistait à copier et exécuter séquentiellement des commandes dans le terminal (dans Kubuntu, il s'agit de Konsole) avec cette page.

Et utilisé comme IDE MonoDevelop 7.8.4 (version 2), installé de la même manière que Mono.

Selenium prend en charge de nombreux navigateurs, mais j'étais trop paresseux pour m'occuper de tout et je me suis limité à Chromeoh, après avoir installé Paquet .deb 64 bits.

Ensuite, nous créons une solution dans MonoDevelop :

  • lancer MonoDevelop
  • allez dans le menu "Fichier"
  • sélectionnez « Créer une solution »
  • cliquez sur « .NET »
  • sélectionnez « Projet de bibliothèque NUnit » et cliquez sur « Suivant »
  • indiquez le nom et le chemin de la solution, cliquez sur « Créer »

Tests Selenium sur C# sous Linux

Pour contrôler le navigateur, vous aurez également besoin de quelques packages NuGet :

  • allez dans le menu "Projet" et sélectionnez "Ajouter des packages NuGet"
  • recherchez et installez le package Selenium.WebDriver
  • recherchez et installez le package Selenium.WebDriver.ChromeDriver

Tests Selenium sur C# sous Linux

C'est tout, il ne reste plus qu'à écrire du code pour vérifier que tout est configuré comme il se doit. Lors de la création d'une solution, un fichier de méthodes de test Test.cs est automatiquement créé, dans lequel je mets les quelques lignes de code suivantes :

using NUnit.Framework;
using System;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium;

namespace SeleniumTests
{
    [TestFixture()]
    public class Test
    {
        [Test()]
        public void TestCase()
        {
            IWebDriver driver = new ChromeDriver();
            driver.Navigate().GoToUrl("http://habr.com/");
            Assert.IsTrue(driver.Url.Contains("habr.com"), "Что-то не так =(");
            driver.Quit();
        }
    }
}

Le test se lance depuis l'onglet « Tests unitaires » ; s'il n'est pas affiché, allez dans le menu « Affichage » et sélectionnez « Test ».

Tests Selenium sur C# sous Linux

Automatisation réussie =)

Source: habr.com

Ajouter un commentaire