Was ist der Weg mit dem geringsten Widerstand gegen das Debuggen von Mokka-Tests?

Edit Nov 2016: Node verfügt jetzt über einen integrierten Debugger, mit dem Sie beginnen können--inspect. Diese Antwort erklärt es:https://stackoverflow.com/a/39901169/30946.

Ich baue einen Mokkatest in Coffeescript. Ganz oben auf dem Test habe ich:

require "../assets/js/theObject.coffee"
debugger
ss = new TheObject()

Ich möchte in dieser Debugger-Zeile anhalten, weil das Objekt intheObject.coffee wird nicht geladen. Ich benutze Node-Inspector und es funktioniert, irgendwie.

Der Prozess, den ich habe, ist:

Starten Sie den Node-InspectorFühren Sie den Test in der Befehlszeile mit ausmocha --compilers coffee:coffee-script ./test/theObjectTests.coffee --ui bdd -d --debug-brkRufen Sie die Node-Inspector-Seite auf und aktualisieren Sie sie, falls sie bereits geöffnet istWarten Sie auf die DateitheObject.coffee Um geladen zu werden, setzen Sie einen Haltepunkt in die richtige Zeile

Es muss einen einfacheren Weg geben. Anscheinend sollte ein Debugger ausgeführt werden und in dieser Debugger-Zeile angehalten werden, aber das kann ich nicht finden.

Ich habe WebStorm, das einen Debugger hat (Dieser Artikel beschreibt Es für die Ausführung von Mokka-Tests einrichten, hat mir aber nicht geholfen. Wenn ich es starte, schlägt es jedoch fehl. Der Befehl, der im WebStorm-Debug-Fenster ausgeführt wird, lautet:

"C:\Program Files\nodejs\node.exe" --debug-brk=64232 C:\Users\jcollum\AppData\Roaming\npm\_mocha

C:\Users\jcollum\AppData\Roaming\npm\_mocha:2
basedir=`dirname "$0"`

Ich vermute, dass dies ein Windows-spezifisches Problem sein könnte.

Env: Windows 7, Webstorm, Knoten 0.8.16, Mokka 1.7.4, Git-Bash

Die Frage: Wenn Sie mit Mocha von vorne anfangen, was ist der einfachste Weg, um einen Debugger zum Laufen zu bringen, der in einer Debugger-Zeile problemlos anhält? Einfach ist hier das Stichwort.

Edit: seit ich das gefragt habe, benutze ich kein Windows mehr und arbeite in Ubuntu. Mein Mokka-Debugging-Prozess (den ich selten verwende) ist der gleiche.

Antworten auf die Frage(10)

Ihre Antwort auf die Frage