La plupart des applications sont développes sur les solutions Web, des services et des applications familiers au JavaScript hébergés par Electron, en passant par une nouvelle génération d’applications Web progressives autonomes. La famille sous-jacente de technologies HTML 5, y compris JavaScript et CSS, ainsi que les langages transposés tels que TypeScript, sont arrivés à maturité et fournissent bien plus que ce à quoi nous nous attendions au début du Web.
Le Web moderne dispose de presque tous les outils dont nous avons besoin pour fournir des applications fiables de niveau professionnel. Nous pouvons construire du code dans des IDE familiers; nous pouvons le déboguer en utilisant des outils basés sur un navigateur tels que ceux qui attendent derrière F12. Il existe même des linters pour nous guider dans l’écriture d’un meilleur code. Mais un domaine reste à la traîne : les tests.
Présentation de webdriver et selenium
Les tests d’applications Web modernes s’appuient sur ces techniques éprouvées, mais au lieu de simuler les navigateurs et les utilisateurs, ils s’appuient désormais sur la spécification WebDriver originale du projet Selenium pour tester les interactions avec les navigateurs de production, tels que Firefox, Chrome et les anciens Edge HTML et le nouveau Edge à base de chrome.
Voici comment utiliser ces outils en anglais :
L’an dernier, Microsoft a annoncé la prise en charge de WebDriver dans le nouvel Edge chez Ignite.
Utilisation de webdriver avec c#
Le C# WebDriver vous fournit des liaisons .NET pour les appels d’API, vous permettant de créer et d’exécuter vos propres scripts de test sans avoir à lever une instance du serveur Selenium. Vous pouvez le télécharger depuis NuGet ainsi que depuis le site Selenium, ce qui simplifie son inclusion dans vos projets et solutions Visual Studio.
C’est une bonne idée de faire en sorte que vos tests basés sur C # fassent partie du même projet que votre application Web, afin que vous puissiez développer ASP.NET Core en parallèle avec les tests WebDriver qui seront utilisés pour les tests unitaires et les tests d’acceptation. Les autres options d’installation incluent l’utilisation du gestionnaire de packages Chocolatey ou d’un conteneur Docker préconfiguré avec Edge et Edge WebDriver installés et en cours d’exécution.