Les tests sont un élément clé de toute application. Pour Node.js, le framework disponible pour Testing s'appelle Jasmine. Au début de 2000, il existait un cadre de test des applications JavaScript appelé JsUnit. Plus tard, ce cadre a été mis à niveau et est maintenant connu sous le nom de Jasmine.
Jasmine aide aux tests unitaires automatisés, ce qui est devenu une pratique clé lors du développement et du déploiement d'applications Web modernes.
Dans ce didacticiel, vous apprendrez comment configurer votre environnement avec jasmine et comment commencer à tester votre première application Node.js avec jasmine.
Dans ce didacticiel, vous apprendrez-
-
Présentation de Jasmine pour tester les applications Node.js
-
Comment utiliser Jasmine pour tester les applications Node.js
Présentation de Jasmine pour tester les applications Node.js
Jasmine est un framework de test BDD (Behavior Driven Development) pour JavaScript. Il ne repose pas sur les navigateurs, DOM ou tout autre framework JavaScript. Ainsi, il convient aux sites Web, aux projets Node.js ou à tout autre endroit où JavaScript peut s'exécuter. Pour commencer à utiliser Jasmine, vous devez d'abord télécharger et installer les modules Jasmine nécessaires.
Ensuite, vous devrez initialiser votre environnement et inspecter le fichier de configuration jasmine. Les étapes ci-dessous montrent comment configurer Jasmine dans votre environnement
Étape 1) Installation des modules NPM
Vous devez installer le module jasmine pour utiliser le framework jasmine à partir d'une application Node. Pour installer le module jasmine-node, exécutez la commande ci-dessous.
npm installer jasmine-node
Étape 2) Initialisation du projet - En faisant cela, jasmine crée un répertoire de spécifications et une configuration json pour vous. Le répertoire spec est utilisé pour stocker tous vos fichiers de test. En faisant cela, jasmine saura où se trouvent tous vos tests, puis pourra les exécuter en conséquence. Le fichier JSON est utilisé pour stocker des informations de configuration spécifiques sur jasmine.
Pour initialiser l'environnement jasmine, exécutez la commande ci-dessous
jasmin init
Étape 3) Inspectez votre fichier de configuration. Le fichier de configuration sera stocké dans le dossier spec / support sous le nom jasmine.json. Ce fichier énumère les fichiers source et les fichiers de spécifications que vous souhaitez que le coureur Jasmine inclue.
La capture d'écran ci-dessous montre un exemple typique du fichier package.json pour jasmine.
- Notez que le répertoire spec est spécifié ici. Comme indiqué précédemment, lorsque jasmine s'exécute, il recherche tous les tests dans ce répertoire.
- La prochaine chose à noter est le paramètre spec_files - Cela indique que quels que soient les fichiers de test créés, ils doivent être ajoutés avec le mot-clé 'spec'.
Comment utiliser Jasmine pour tester les applications Node.js
Afin d'utiliser Jasmine pour tester les applications Node.js, une série d'étapes doit être suivie.
Dans notre exemple ci-dessous, nous allons définir un module qui ajoute 2 nombres à tester. Nous définirons ensuite un fichier de code séparé avec le code de test, puis utiliserons jasmine pour tester la fonction Add en conséquence.
Étape 1) Définissez le code à tester. Nous allons définir une fonction qui ajoutera 2 nombres et retournera le résultat. Ce code va être écrit dans un fichier appelé "Add.js."
var exports=module.exports={};exports.AddNumber=function(a,b){return a+b;};
Explication du code:
- Le mot-clé "exports" permet de garantir que la fonctionnalité définie dans ce fichier est effectivement accessible par d'autres fichiers.
- Nous définissons alors une fonction appelée «AddNumber». Cette fonction est définie pour prendre 2 paramètres, a et b. La fonction est ajoutée au module "exports" pour faire de la fonction une fonction publique accessible par d'autres modules d'application.
- Nous faisons enfin en sorte que notre fonction retourne la valeur ajoutée des paramètres.
Étape 2) Ensuite, nous devons définir notre code de test jasmin, qui sera utilisé pour tester notre fonction "Ajouter" dans le fichier Add.js. Le code ci-dessous doit mettre dans un fichier appelé add-spec.js.
Remarque : - Le mot «spec» doit être ajouté au fichier de test afin qu'il puisse être détecté par jasmine.
Explication du code:
var app=require("… /Add.js");describe("Addition",function(){it("The function should add 2 numbers",function() {var value=app.AddNumber(5,6);expect(value).toBe(11);});});
- Nous devons d'abord inclure notre fichier Add.js afin de pouvoir tester la fonction 'AddNumber' dans ce fichier.
- Nous créons maintenant notre module de test. La première partie du module de test est de décrire une méthode qui donne essentiellement un nom à notre test. Dans ce cas, le nom de notre test est "Addition".
- Le bit suivant est de donner une description de notre test en utilisant la méthode «it».
- Nous appelons maintenant notre méthode Addnumber et envoyons 2 paramètres 5 et 6. Cela sera passé à notre méthode Addnumber dans le fichier App.js. La valeur de retour est ensuite stockée dans une variable appelée value.
- La dernière étape consiste à faire la comparaison ou notre test réel. Puisque nous nous attendons à ce que la valeur retournée par la fonction Addnumber soit 11, nous la définissons en utilisant la méthode expect (value) .toBe (la valeur attendue).
Production
- Pour exécuter le test, il faut exécuter la commande jasmine.
- La capture d'écran ci-dessous montre qu'après l'exécution de la commande jasmine, elle détectera qu'il existe un test appelé add-spec.js et exécutera ce test en conséquence. S'il y a des erreurs dans le test, elles seront affichées en conséquence.
Résumé
- Afin de tester une application Node.js, le framework jasmine doit d'abord être installé. Cela se fait à l'aide du gestionnaire de packages Node.
- Le code de test doit être écrit dans un fichier séparé et le mot «spec» doit être ajouté au nom du fichier. Ce n'est que si cela est fait que jasmine pourra détecter qu'un fichier doit être exécuté.
- Pour exécuter le test, vous devez exécuter la commande jasmine. Cela trouvera tous les fichiers qui ont le mot «spec» attaché et exécutera le fichier en conséquence.