2016-05-01 5 views
3

Ich habe ein ES6 Babel-Projekt eingerichtet und alles funktioniert gut. Ich mache meine Tests mit Mocha. Jetzt möchte ich in der Lage sein, einen Debugger laufen zu lassen, während ich Tests durchführe. Dies ist, was ich bisher getan haben:Debuggen ES6 Mocha Tests mit Node-Debugger

npm install -g node-inspector 
npm install -g babel-register 

erstellt eine Datei namens babel-hook.js

require('babel/register')({ 
    stage: 1, 
    sourceMap: 'inline', 
}); 

jetzt in einer Konsole Ich betreibe:

node-inspector 

öffnen Chrome

Dann von Projektstamm ich laufe:

Dann habe ich einen Haltepunkt in meinem Test:

Wenn ich drücken Sie F8 ich die folgende Fehlermeldung erhalten:

/Users/h/Documents/code/js/test/my-test-file.js:1 
(function (exports, require, module, __filename, __dirname) { import { assert } from 'chai'; 
                   ^^^^^^ 

SyntaxError: Unexpected token import 
... 

Nun, was ich diese Arbeit zu bekommen bin fehlt ???

Antwort

1

Wahrscheinlich möchten Sie das Flag --compilers für Mocha, das angibt, wie die Eingabedateien kompiliert werden. Zum Beispiel gibt https://babeljs.io/docs/setup/#installation Das Beispiel

mocha --compilers js:babel-register

Versuchen Sie auch, Ihre Tests ohne --debug-brk laufen zu isolieren, ob die Haltepunkte das Problem sind, oder ob es sich um Mokka im Allgemeinen (die hier beschriebene Lösung für die letztere ist).

Schließlich, wenn dies nicht funktioniert, können Sie bessere Ergebnisse haben babel-register nicht-global (ohne die -g Flagge npm install) wie in der Dokumentation der Installation gezeigt: https://babeljs.io/docs/usage/require/

Verwandte Themen