6
votes

MOCHA: Comment exécuter plusieurs fichiers de test JS sous environnement de processus distinct

Je suis nouveau à MOCHA, donc cela pourrait probablement être une question triviale mais ne pouvait pas encore trouver une réponse:

J'ai un simple projet Nodejs avec le package ci-dessous.json p> xxx Pré>

et les deux fichiers de test suivants dans le dossier de test: P>

test1.js strong> p>

ie-macp-davidt:crap davide_talesco$ npm test

> pc-lib@1.0.0 test /Users/davide_talesco/development/crap
> mocha



  Test setProp
    1) env variable should be test

  Test setProp
    ✓ env variable should be prod


  1 passing (16ms)
  1 failing

  1) Test setProp env variable should be test:

      AssertionError: expected 'prod' to equal 'test'
      + expected - actual

      -prod
      +test

      at Context.<anonymous> (test/test1.js:11:36)



npm ERR! Test failed.  See above for more details.


0 commentaires

3 Réponses :


5
votes

L'un des moyens les plus simples est d'utiliser UNIX Recherche COMMANDER:

Trouver ./Test -Name '* .js' -Exec moka \ {} \;

Je recommanderais d'utiliser des fichiers binaires MOCHA pour éviter les problèmes dans le cas où il n'est pas installé globalement:

trouver ./ Test -Name '* .js' -exec -exec ./node_modules/.bin/mocha \ {} \;

Si vous souhaitez ajouter cela à package.json , veuillez noter que les barres obliques backslash doivent être échappées: xxx


0 commentaires

0
votes

Si vous souhaitez annuler les tests dès qu'un fichier de test échoue, vous pouvez le faire comme ceci:

find ./test -type f -name "*.js" -exec sh -c 'for n; do ./node_modules/.bin/mocha "$n" || exit 1; done' sh {} +


0 commentaires