Fermer

mai 9, 2022

Introduction au monde impressionnant de l’automatisation Cypress – Mise en route

Introduction au monde impressionnant de l’automatisation Cypress – Mise en route


L’automatisation Cypress est la dernière norme de test frontale que tout développeur et ingénieur QA devrait connaître. Il s’agit d’une solution de test automatisé front-end de pointe pour les applications Web modernes.

Le cyprès est principalement utilisé pour :

  • Tests unitaires
  • Tests d’intégration
  • Test de flux de bout en bout

Néanmoins, il peut également être utilisé pour des tests fonctionnels.

Bien que le cyprès soit fréquemment comparé au sélénium, les deux sont fondamentalement et structurellement distincts.

La bonne partie est que nous pouvons nous débarrasser de ces pilotes de navigateur dans Cypress 🤩.

Pourquoi Cypress et en quoi est-il différent de Selenium ? Sorts magiques de cyprès….

  • Rapide, cohérent, sans effort et fiable : Par rapport à l’outil Selenium, Cypress offre une exécution de test plus rapide, cohérente, sans effort et fiable grâce à sa conception architecturale, car le test s’exécute directement dans le navigateur sans l’utilisation d’un pilote de navigateur.
  • Attente automatique : Il n’est pas nécessaire d’inclure Waits and Sleep dans vos tests. Cypress attend automatiquement les commandes et les assertions. Il n’y aura plus d’asynchronisation.
  • Voyage dans le temps: Nous pouvons survoler chaque commande dans le journal des commandes pour voir exactement ce qui s’est passé à chaque étape. Contrairement à d’autres outils d’automatisation, nous pouvons voir et déboguer chaque étape du journal pendant l’exécution des tests.
  • Débogage facile : Les outils de développement de Cypress simplifient le débogage. Le débogage est rapide et indolore grâce aux erreurs et à la trace de la pile. Les messages d’erreur sont très lisibles et expliquent pourquoi notre script a échoué.
  • Cypress dispose d’un menu d’état de test qui affiche le nombre de cas de test qui ont réussi ou échoué.
  • Cypress recharge toutes les mises à jour effectuées dans les tests par défaut.
  • Capture d’écran et vidéos : Par défaut, Cypress peut capturer des captures d’écran en cas de panne. Il peut également enregistrer des vidéos de l’ensemble de la suite de tests exécutés à partir de l’interface de ligne de commande. Lorsque nous exécutons nos tests à partir du tableau de bord Cypress, nous pouvons regarder des vidéos de l’ensemble du processus.
  • Langage universel simple et unique : Parce que son architecture est basée sur Node JS, il ne fonctionne qu’avec JavaScript, qui est très simple à apprendre. JavaScript est extrêmement simple à utiliser pour les développeurs et les testeurs.
  • Prise en charge de plusieurs navigateurs : Il prend en charge Chrome, Edge, Electron (le navigateur par défaut est fourni avec Cypress et fonctionne en mode sans tête) et Firefox (toujours en construction).
  • Prise en charge des tests d’API : Cypress peut effectuer des appels HTTP ; Donc, nous pouvons tester les API aussi bien.
  • Le plugin externe prend en charge : Cyprès prend en charge les plugins externes pour élargir la couverture des tests.

Pcondition préalable et Configuration :

Cypress facilite et accélère le démarrage des tests.

Nous pouvons préparer Cypress à fonctionner de deux manières :

  1. Application de bureau, qui nous permet de télécharger et d’installer directement l’application Cypress.
  2. En utilisant Nœud js MNP et Code VS nous pouvons commencer à écrire notre test.

Cypress est une application Node.js fournie sous la forme d’un NPM (gestionnaire de paquets de nœuds) module.

Parce qu’il est construit sur Node.js, il utilise JavaScript pour écrire des tests, mais 90 % du codage peut être effectué à l’aide de commandes intégrées Cypress simples à comprendre.

Cliquez sur sur les images ci-dessous pour Télécharger Node JS et code Visual Studio (code VS).

Nodejs 1 Logo Png Transparent Code Visual Studio7642

Structure du projet après l’installation de Cypress :

Écran de projet Vs Code

Cadre Cyprès :

Tous les tests Cypress seront exécutés dans un cadre recommandé appelé « Mocha ». Il sera fourni avec Cypress, il n’y aura donc pas besoin de le télécharger séparément.

Il y en a un autre, « Jasmin ».

Commandes globales Cypress :

‘cy’ est une commande globale pour invoquer toutes les commandes cypress comme un ‘driver.findElement()’ etc. nous appelons toutes les méthodes requises.
Pas besoin de créer ou d’importer quoi que ce soit pour ‘cy’.

Essai Cyprès :

Comme nous allons travailler sur JavaScript, nous avons donc besoin de ‘.js‘ pour écrire nos scripts d’automatisation.

En moka ou en jasmin, on peut utiliser ‘décrire‘ et ‘ce‘ pour commencer à écrire notre test.

Le bloc ‘describe’ sera appelé comme suite de tests.

Tout le test passe à l’intérieur de cette suite.

Suite de tests et cas de test

Affirmation de Cyprès :

Tout comme un TestNG, nous pouvons également utiliser des assertions ici pour valider les cas de test.

Assertions implicites –

  • .Devrait contenir’, « )
  • .devrait(‘avoir.texte’, ”)
  • .devrait(‘être.visible’)

Assertions explicites –

  • attendre(‘nom’).to.be.equal(‘cyprès’)

Affirmer –

  • assert.equal(4, 5, ‘Pas égal’)
  • assert.notEqual(4, 5, ‘Pas égal’)
  • assert.isAbove(4, 5, ‘Pas égal’)
  • assert.isExist(4, 5, ‘Pas égal’)

Premier programme Cypress :

TestCase 1 – Ouvrir le navigateur

Première démo du programme

Exécuteur de test Cypress :

Dans le ‘Terminal’ tapez cette commande – ‘npx cyprès ouvert

Cyprès ouvert avec borne

Il ouvrira l’interface graphique de cyprès, et à partir de là, cliquez sur le cas de test que nous venons de créer.

Gui de cyprès

Journal des étapes de test et débogage :

Nous pouvons accéder à chaque étape que nous avons écrite dans le code en utilisant Enregistrer et nous pouvons également parcourir chaque étape une par une en les survolant.

Écran d'automatisation

En un mot:

L’automatisation Cypress est facile à écrire et à exécuter par rapport à Selenium.

Ce blog ne contient que l’introduction et quelques étapes rapides pour commencer. je travaille sur un autre blog pour des tutoriels détaillés et étape par étape pour l’automatisation Cypress.

On se voit là-bas…

A propos de l’auteur

Imranur Raheem travaille en tant que consultant technique en assurance qualité chez Perficient, où il est impliqué dans un projet de test d’API et de test AEM et possède plus de 5 ans d’expérience en test. Enthousiaste à l’idée d’acquérir de nouveaux talents et de transmettre ces compétences à d’autres. Partager son talent via son blog.

Plus de cet auteur






Source link