Nous mettrons à jour notre Politique de confidentialité prochainement. En voici un aperçu.

JavaScript : Les tests unitaires et fonctionnels

Écrire un premier test fonctionnel

Testez gratuitement nos 1341 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Avec CasperJS, l'écriture de tests fonctionnels est assez simple. Néanmoins, vous devrez respecter un format bien particulier pour exécuter les tests correctement.
05:04

Transcription

Il va falloir faire attention parce qu'il va y avoir une différence entre écrire pour du scraping et écrire pour faire des tests fonctionnels. Ça n'a pas du tout la même valeur et ce n'est absolument pas la même chose. Pour écrire des tests fonctionnels, on va devoir utiliser obligatoirement cette syntaxe-là. Du coup, on devra, plutôt que de faire le casper.start à cet endroit-là, venir wrapper et mettre un casper.test.begin, comme ça, pour pouvoir utiliser, à l'intérieur, les différentes informations. Attention, étant donné qu'ici, c'est une fonction on va devoir fermer cette fonction à cet endroit-là. Si vous voulez écrire des tests, vous serez obligés de procéder de cette manière. Vous avez un exemple un peu plus complet qui se trouve en dessous, là, où on a bien le casper.start qui démarre et ensuite il faudra utiliser des casper.then pour faire autre chose et comme vous passez, ici, à l'intérieur, l'objet test, cet objet test va nous permettre de travailler avec des assertions. Il existe énormément d'assertions que l'on va pouvoir utiliser. Vous allez retrouver ces assertions, il y a une documentation API avec toutes les assertions et vous pouvez travailler avec elles sans aucun problème. Si on cherche les assertions, on a les assert en dessous, tous les test, tous les prototypes de testeurs se trouvent là. On a des assert Exists, Falsy, etc. On peut vraiment travailler sur beaucoup de choses. Le premier test qu'on pourrait écrire, ce serait un test qui viendrait vérifier si tous nos éléments existent. On va faire un test assertExists pour le root parce qu'on sait, actuellement, qu'on doit obligatoirement, dans notre code, avoir ici une class root qui va être notre emplacement dans lequel on va venir injecter les différentes lignes de notre chat. On va vérifier que cet élément existe. On pourrait aussi vérifier que le formulaire avec un id send existe. Pour faire cela, vous allez pouvoir faire aussi un assertExists sur le form qui a un identifiant et n'oubliez pas de bien respecter ce que vous avez mis. Si l'identifiant est send, vous mettez send. On va faire la même chose pour l'input qui se trouve à l'intérieur. Il n'y a pas de class, il n'y a rien, on peut vérifier qu'il y a input sur la page, ce sera bien suffisant. Quand vous faites des assertExists, vous vérifiez la présence d'un élément. Ici, on peut vérifier la présence d'un input. Il est important d'utiliser des class et des identifiants pour vos différents éléments de page parce que nous allez, sinon, être embêtés. Pensez aussi, de temps en temps, à aller regarder la documentation sur une assertion, qui vous donnera un peu plus d'informations, qui vous expliquera comment l'utiliser. A chaque fois, pour chaque assertion, vous allez avoir les différentes informations possibles, ce que vous pouvez passer à l'intérieur, comment ça va l'utiliser, etc. Et là, vous voyez qu'il y en a quand même beaucoup. On peut en faire sur le titre, sur la visibilité, sur des equality, donc des égalités ou pas, du match, exactement ce qu'on faisait avant, le statut HTTP d'une page, donc là, vous pouvez tester pas mal de comportements d'une page et vous pouvez, sans souci, gérer le clic, on va le voir après mais c'est comme un utilisateur utilisant le site mais plus encore car un utilisateur va voir qu'il y a bien input etc. mais, il ne saura pas qu'il y a des identifiants et ce genre de choses. Vous serez obligés d'aller regarder pour voir si c'est bien les bons identifiants, les bonnes classes. Là, le framework va le faire pour nous. Autre chose, quand vous allez arriver sur un site internet à tester, si vous avez des scripts fonctionnels à mettre en place, vous pouvez vous balader, ici dans le HTML pour récupérer les identifiants et vous pouvez écrire le site, vous pouvez même vous entrainer sur n'importe quel site pour le tester et voir ce que ça donne. Il faut savoir qu'on peut aller très loin avec Casper. Dernière chose, quand vous êtes en train d'écrire un test, on va revenir en arrière, vous allez voir dans l'exemple ici on vous le met, quand vous avez terminé, à la fin, il faut obligatoirement utiliser cette petite ligne, là. Quand vous regardez l'exemple de départ qu'on avait ici, à la fin, on termine par un test.done Ça marche aussi, c'est exactement la même chose, on peut faire soit test.done soit simplement on fait un casper.run et puis un test.done C'est mieux de le faire, si vous avez utilisé des then, ce que je vous conseille, car utiliser des then va vous permettre de découper un peu les blocs de logique de vos différents tests fonctionnels. C'est mieux si on découpe et on fait ça proprement que si on vient avoir absolument tout dans la première fonction. Vous l'utilisez comme ça. Pensez à quelque chose aussi. Les assertions que vous avez là, vous le verrez, il faut y penser parce que ça fait partie vraiment du test. Il faut aussi donner un nom, là on pourrait mettre : All elements are on the page et comme ça, vous enregistrez cette partie-là. Vous avez donc maintenant ici votre premier test fonctionnel. Vous allez pouvoir en écrire d'autres, évidemment !

JavaScript : Les tests unitaires et fonctionnels

Réalisez des tests unitaires avec Jasmine et des tests fonctionnels avec CasperJS. Testez le code source et le rendu visuel de votre application, et optimisez vos développements.

1h54 (31 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Jasmine Jasmine 2.5
CasperJS CasperJS 1.1.4
Spécial abonnés
Date de parution :5 avr. 2017

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !