Existe-t-il actuellement de bons cadres de test unitaires node.js (server side js)? Je recherche quelque chose d'un peu plus profond que le module Assert fourni.
javascript
unit-testing
node.js
marque
la source
la source
.done()
mon humble avis..done()
prendre en charge les tests asynchrones. Je conviens que cela peut parfois être un peu difficile à manier, mais cela a une excellente raison de le faire de cette façon.Je cherchais également un cadre de test décent pour node et j'ai trouvé Mocha . Il est le successeur officiel d' Expresso et semble très mature.
Il permet de brancher différentes bibliothèques d'assertions, il offre des reporters pour la couverture du code et d'autres choses (vous pouvez brancher les vôtres). Il peut exécuter une synchronisation ou une synchronisation asynchrone et dispose d'une API concise.
Je vais essayer et faire un rapport ...
ÉDITER:
Après un temps incroyable consacré à d'autres projets, je suis finalement revenu sur un projet Javascript et j'ai eu le temps de jouer avec le moka. Je peux sérieusement recommander de l'utiliser. Les tests se lisent très bien, l'intégration avec gulp est excellente et les tests sont très rapides. J'ai pu configurer des tests automatiques autonomes et dans le navigateur (browserify) et des rapports de couverture de code correspondants en une demi-journée environ (la plupart du temps passé à comprendre comment utiliser browserify de gulp). Pour moi, mocha me semble un très bon choix pour un framework de test.
METTRE À JOUR:
Je suis toujours très convaincu du moka. L'intégration avec chai permet de connecter différents styles d'assertion. Vous pouvez récupérer une configuration de travail dans ce projet github . Je l'utilise maintenant avec karma, intégrant un rapport de couverture de code, des observateurs automatiques et une bonne intégration avec IntelliJ
la source
Personnellement, je n'ai utilisé que le module d'assert, mais j'en redemande aussi. J'ai parcouru de nombreux modules de nœuds et les cadres de tests unitaires populaires sont des unités de nœud et devraient (qui est fait par le même gars qu'Expresso (peut-être un nom mis à jour?)
Les vœux semblent également prometteurs.
la source
Personnellement, je suis resté avec Expresso , mais il existe de nombreux frameworks différents, adaptés à la plupart des styles de test.
Joyent a une longue liste ; essayez ça.
la source
vows est une solide bibliothèque de tests unitaires pour node.js mais la syntaxe est fastidieuse.
J'ai écrit une abstraction mince appelée vows-fluent qui rend l'API chaînable.
Et j'ai écrit une autre abstraction, [vows-is] qui s'appuie sur les vœux fluent et expose une syntaxe de style BDD.
Un exemple serait
Plus d'exemples
la source
Je pense que parmi les différents frameworks de test disponibles, mocha est le plus récent et très simple à implémenter. Voici un magnifique tutoriel sur son utilisation: http://thewayofcode.wordpress.com/2013/04/21/how-to-build-and-test-rest-api-with-nodejs-express-mocha/
la source
Si vous êtes familier avec QUnit , vous pouvez utiliser node-qunit qui est une sorte de wrapper de nœud autour du framework existant de QUnit.
la source
Initialement conçu pour node.js, deadunit est une bibliothèque de tests unitaires javascript pour node.js et le navigateur. Certains de ses attributs uniques:
count
assertion simple qui facilite le traitement des exceptions attendues et des assertions asynchronesla source
Je viens de télécharger un projet que j'utilise pour tester des unités nodejs avec karma et Jasmine: narma . Vos modules de nœuds sont chargés dans un navigateur nodewebkit afin que vous puissiez exécuter des modules de nœuds et utiliser des bibliothèques comme jquery dans le même tas.
la source
test-studio est un package npm qui fournit une interface Web puissante pour les tests unitaires. Il prend en charge des tâches telles que l'exécution de tests individuels ou de groupes et la progression de l'inspecteur de nœuds dans des tests individuels. Il prend actuellement en charge le moka et d'autres cadres seront pris en charge à l'avenir en fonction de la demande.
En savoir plus ici .
Avertissement: je suis l'auteur.
la source