en cours d'exécution docker mhart/Alpine-node: 8 sur macOS avec
nodejs (6.10.3-r0) (18/18) fil 0.24.6 Jest 20.0.4
J'ai un fichier __tests __/index.test.js cependant, lors de l'exécution du code
node_modules/.bin/jest --watchAll
Je reçois la sortie ci-dessous
Aucun test trouvé
Dans/usr/src/app
5 dossiers vérifiés.
testMatch:/__ test __// *. js? (x), ** /? (*.) (spec | test) .js? (x) - 1 correspondance
testPathIgnorePatterns:/node_modules /,/src, src - 0 correspondances
Motif: "" - 0 correspondances
J'ai réinstallé les numéros de paquet fois mais en vain.
Votre sortie indique que testMatch
avait 1 match
, ce qui peut être votre fichier __tests__/index.test.js
. Il semble que votre testPathIgnorePatterns
soit en train d’ignorer cette suite de tests. No tests found In /usr/src/app
indique que Jest recherche des tests dans /usr/src/app
et testPathIgnorePatterns: /node_modules/,/src,src
indique que Jest ignore les fichiers des répertoires /src
.
Pointez Jest pour regarder l'emplacement de votre fichier __tests__/index.test.js
s'il se trouve en dehors du répertoire/src, ou empêchez testPathIgnorePatterns
d'ignorer le répertoire/src.
Si vous souhaitez exécuter tous les tests dans le dossier tests , vous pouvez simplement procéder comme suit jest __tests__ --watch
Si vous avez une structure de fichier telle que celle-ci
myFolder
│ myFile1.js
│ myFile2.js
│ ...
│
└───__tests__
myFile1.spec.js
myFile2.spec.js
...
alors vous devez avoir dans jest.config.js
le modèle suivant pour la propriété testMatch
:
testMatch: ['**/__tests__/*.js?(x)'],
L'exemple simple de jest.config.js
:
const jestConfig = {
verbose: true,
testURL: "http://localhost/",
'transform': {
'^.+\\.jsx?$': 'babel-jest',
},
testMatch: ['**/__tests__/*.js?(x)'],
}
module.exports = jestConfig
J'ai eu cette erreur en essayant d'exécuter des tests dans un sous-module d'un projet. Le problème a été résolu en testant le sous-module de manière isolée, dans une arborescence de dossiers distincte du projet principal.
Vous pouvez essayer d'exécuter jest
sans aucun paramètre. Un élément clé à noter est que les noms de fichier de test doivent respecter la convention *.test.js
.