Puppetry 3: tests automatisés sans une seule ligne de code

Je pense que cela n'a aucun sens de convaincre quiconque de la valeur des tests automatisés. Cependant, les tests fonctionnels sont souvent extrêmement difficiles à écrire et encore plus utiles. Il existe de nombreuses solutions conçues pour simplifier le développement des tests. Je veux parler de l'un d'eux - la marionnette. Il s'agit d'une application de bureau (Windows / Linux / Mac), qui est essentiellement un concepteur de tests, sans avoir besoin d'écrire de code. L'ingénieur QA peut simplement enregistrer le script utilisateur dans le navigateur intégré, étendre les tests générés avec des commandes de navigateur et des instructions de test, configurer la structure et exécuter les tests pour exécution. Puppetry traduit la spécification de test d'un format lisible par l'homme (Gherkin) dans le projet Jest / Puppeteer. Puis il démarre le projet et montre le rapport. En fait, un tel projet peut être inclus dans la chaîne d'intégration continue "tel quel"

Suite de tests

Rapport de test



Fondamentalement, la marionnette peut être considérée comme une interface graphique pour le marionnettiste (API Chromium) avec plus de 60 commandes et instructions de test visualisées conçues pour rendre le développement de test aussi simple que possible. Par exemple, dans Puppetry, vous pouvez simplement indiquer "Je prétends que l'élément FOO est actuellement situé au-dessus de la BARRE". Il sera converti en code de programme qui calcule les styles des deux éléments et les compare.

Test de la position de l'élément

Quelqu'un a probablement pensé maintenant: "juste un jouet, adapté uniquement aux tests les plus simples." En fait, avec Puppetry, vous pouvez mettre en œuvre des stratégies de test assez sérieuses, notamment des tests de contenu dynamique, une budgétisation des performances, des tests de régression CSS, des tests d'extensions Chrome, des composants Web et même du code d'interaction Google Analytics.

Test de régression CSS - rapport

Test de Google Analytics

Dans la vie réelle, les tests fonctionnels sont parfois difficiles à déboguer. Les applications Web modernes sont très dynamiques. Le contenu des pages change en réponse aux actions des utilisateurs. Nous devons constamment nous rappeler lorsque nous adressons l'élément de page qu'au moment de la demande, il peut toujours être disponible ou déjà supprimé. La marionnette vous permet de définir des points d'arrêt, ainsi que d'exécuter des tests de manière interactive. Dans les deux cas, le programme s'arrête à un point problématique, vous permettant d'examiner la page dans un navigateur et même de lancer DevTools et de vérifier l'état du DOM.

Bien sûr, chacun a sa propre opinion et ses préférences, cependant, il est toujours logique d'essayer la marionnette. C'est le cas lorsque créer des tests automatisés est vraiment amusant. Vous pouvez simplement le noter sur la vidéo youtu.be/dfuNhTCRMRg

Lien de téléchargement github.com/dsheiko/puppetry/releases
Site officiel puppetry.app

Source: https://habr.com/ru/post/fr477908/


All Articles