jco*_*lum 41 debugging unit-testing mocha.js node.js coffeescript
编辑2016年11月:Node现在有一个内置的调试器,您可以从中开始--inspect.这个答案解释了它:https://stackoverflow.com/a/39901169/30946.
我正在用coffeescript建立一个摩卡测试.在测试的顶部,我有:
require "../assets/js/theObject.coffee"
debugger
ss = new TheObject()
Run Code Online (Sandbox Code Playgroud)
我想停止在调试器行上,因为theObject.coffee没有加载对象.我正在使用节点检查器,它可以工作,sorta.
我的过程是:
mocha --compilers coffee:coffee-script ./test/theObjectTests.coffee --ui bdd -d --debug-brktheObject.coffee加载,然后在正确的行上放置一个断点必须有一个更简单的方法.看起来我应该能够运行一个调试器并让它停在那个调试器行上,但我无法找到它.
我有WebStorm,它有一个调试器(本文讨论设置它来运行mocha测试,但它没有帮助我),但是当我启动它时,它失败了.在WebStorm调试窗口中运行的命令是:
"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"`
Run Code Online (Sandbox Code Playgroud)
我怀疑这可能是一个特定于Windows的问题.
环境:Windows 7,Webstorm,节点0.8.16,mocha 1.7.4,git-bash
问题是:如果你是从头开始使用Mocha,那么调试器的最简单方法是什么才能轻松地停在调试器线上?这里的关键字很简单.
编辑:自从问这个我已经停止使用Windows并在Ubuntu工作.我的mocha调试过程(我不经常使用)是一样的.
jco*_*lum 61
多年后编辑:节点6+中的最短路径是:mocha --debug-brk --inspect ./test.js与Node Inspector Manager插件配合使用.
几周后,没有答案.这是我找到的最快捷的路径.
node-inspectornode-inspector- 它现在将在5858上收听--debug-brkdebugger上.有时它不会将代码文件的窗口移动到正确的位置,因此您必须按F10才能使其前进到下一行并显示文件中的位置.命令行:
node-inspector & mocha --compilers coffee:coffee-script/register ./test/appTests.coffee --ui bdd -d -g "should X then Y" --debug-brk
cap*_*lam 11
除了@jcollum上面的回答,我发现不使用--debug-brk标志,最好只使用带-w(watch)的--debug标志
这样,当您从代码中添加和删除调试器行时,mocha将自动重新加载测试,并且您的节点检查器将在相应的行上暂停.
这节省了不得不重新访问终端不断重新开始测试,然后不必要地在调试器中"继续"以超过源的第一行.
使用最新版本的Mocha和node-inspector,这对我来说非常有用:
$ node-debug ./node_modules/mocha/bin/_mocha
Run Code Online (Sandbox Code Playgroud)
它将本地Mocha可执行文件作为调试进程加载,在第一行停止以设置断点.
| 归档时间: |
|
| 查看次数: |
20396 次 |
| 最近记录: |