Ich versuche, Eisen-Knoten (v2.2.17) zu verwenden, um meine Mokka Komponententests zu debuggen. Die Einheit-Tests laufen gut, wenn ich diesen Befehl aus meiner package.json laufen:module.js können keine Module finden beim Ausführen von Eisen-Knoten
"test": "cross-env NODE_ENV=test mocha test/.setup.js --reporter progress --compilers js:babel-core/register --require babel-polyfill --recursive \"./src/**/*.spec.js\" \"./src/**/*.integrationSpec.js\" \"./test/**/*.spec.js\"",
Jedoch, wenn ich diesen Befehl ausführen die Tests fehlschlagen:
"debug:test": "cross-env NODE_ENV=test iron-node node_modules\\mocha\\bin\\_mocha test/.setup.js --reporter progress --compilers js:babel-core/register --require babel-polyfill --recursive \"./src/**/*.spec.js\" \"./src/**/*.integrationSpec.js\" \"./test/**/*.spec.js\"",
Der Fehler in der Konsole ist:
Error: Cannot find module 'src/framework/api/entityAddresses/entityAddressesAc tions'
- module.js:16 require
internal/module.js:16:19
- entityAddressesActions.spec.js:5 Object.<anonymous>
entityAddressesActions.spec.js:5:1
Dieses Modul befindet sich in C:\TFS\Dev-UI\WebApp\Src\Web\Web\src\framework\api\entityAddresses\entityAddressesActions.js
Mein Projektordner ist C:\TFS\Dev-UI\WebApp\Src\Web\Web
und meine process.env.NODE_PATH
ist auch C:\TFS\Dev-UI\WebApp\Src\Web\Web
. (es war undefiniert aber ich setze es auf process.cwd()
in meinem .iron-node.js
- siehe https://github.com/s-a/iron-node/issues/98#issuecomment-218658236)
Ich kann nicht herausfinden, warum das Modul nicht gefunden wird. Fehle ich etwas Konfiguration?
bearbeiten
Diese SO Antwort schlägt process.env.NODE_PATH
Einstellung, wenn die App nicht funktioniert hat damit begonnen, weil die Modulpfade zwischengespeichert werden: Determine project root from a running node.js application
ich ratlos bin, wie diese einzustellen, bevor Eisen-Knoten beginnt, ist es immer undefined