Je souhaite utiliser mocha pour tester mon projet TypeScript/Angular2. J'ai essayé d'utiliser ts-node comme décrit ici :
npm install -g ts-node
mais en cours d'exécution
mocha --require ts-node/register -t 10000 ./**/*.unit.ts
Je reçois une erreur
Impossible de trouver le module 'ts-node/register'
Qu'est-ce que j'oublie ici?
Étant donné que la réponse qui convient à beaucoup de personnes semble être cachée dans les commentaires, je la posterai en tant que réponse réelle à la question, maintenant qu'il semble que la question a été rouverte.
J'ai eu ce problème aussi. Vous ne savez pas pourquoi ce Q a été fermé. mais l'installation de ts-node localement résout ce problème.
npm install ts-node --save-dev
Merci @Anita, car c'était la réponse qui a fonctionné pour moi aussi.
Wow, une erreur stupide peut vous coûter du temps. J'étais confronté au même problème lorsque j'essayais de déboguer mon application nodejs
. L’erreur que j’ai faite est que j’ai créé mon dossier .vscode
En dehors de mon dossier nodejs
app (le répertoire contenant node_modules
). Lorsque j'ai déplacé mon .vscode
Dans ce dossier, tout fonctionne correctement. Ci-dessous, mon fichier launch.json
.
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "index",
"args": [
"src/index.ts"
],
"runtimeArgs": [
"-r",
"ts-node/register"
],
"cwd": "${workspaceFolder}",
"protocol": "inspector",
"internalConsoleOptions": "openOnSessionStart"
}
],
"compounds": []
}
Je sais que c'est un peu vieux, mais je l'ai aussi rencontré et je voulais proposer la solution que j'utilise actuellement.
J'ai installé ts-node
globalement en utilisant Sudo npm i -g ts-node
. Pour que cela fonctionne avec mocha, il me suffisait de donner à moka le chemin absolu vers le module, comme ceci:
mocha -r /usr/lib/node_modules/ts-node/register test/*Test.ts
J'espère que ça aide quelqu'un d'autre.
Essayez cette commande à la place:
mocha --compilers ts:ts-node/register,tsx:ts-node/register
qui fonctionne pour moi.
Error: module.js:328 throw err; Error: Cannot find module 'ts-node'
Solution: la commande suivante résout le problème.
npm installe ts-node --save-dev
(Installe ts-node en tant que dépendance de développement pour votre projet)