如何debugging咕噜莫卡任务?
我正在使用WebStorm运行一个咕task任务。 debugging器成功停止在Gruntfile.js文件的断点处,但不在我的任务文件中。
在Gruntfile.js中,我注册了一个这样的任务:
grunt.initConfig({ ... configuration ... }); grunt.registerTask('myTask', ['mocha:myTask']);
当我在testing“myTask”的相应js文件中设置一个断点时,它不会停止。 我怎样才能debugging咕噜testing呢?
— UPDATE —————————————
所以我尝试了所有可能的解决scheme,但这并没有解决我的问题!
我能够debugginggrunt脚本本身,这是debugging器实际停止的地方(在WebStorm或节点检查器中)。 Gruntfile.js中的一个断点正在工作。
问题是,我无法debugging实际的Grunt任务本身,像这样注册grunt:grunt.registerTask('myTask',['mocha:myTask']);
我也能够debugging摩卡testing本身。 但是我想debugging一下从grunt task runner调用的一个mochatesting。 有任何想法吗?
要在debugging中运行grunt任务,您需要将grunt任务脚本传递给node-inspector:
node-debug $(Path \AppData\Roaming\npm\node_modules\grunt-cli\bin\grunt) task
放一个debugger;
在你的任务线。 然后node-inspector
将打开一个带有debugging工具的浏览器。
这个链接帮助你如何工作grunt-node-inspector
例如: ChrisWren / grunt-node-inspector
来源: Stackoverflow的问题
最后,我能够debugging我的摩卡的任务! 感谢所有的答复和评论,但不幸的是,我必须select我自己的答案,因为那是唯一对我有用的答案。
感谢这段video,我发现我错过了: http : //vimeo.com/97561531
基本上是两件事情:
-
为grunt的摩卡configuration添加一个“debug-brk”选项:
grunt.initConfig({ ... "options": { "mocha": { ... "debug-brk": (grunt.option('debug-brk')) ? "" : 0 } } }
-
像这样configurationWebStorm的debuggingconfiguration:
如果碰巧使用WebStorm IDE,您可以设置一个任务,然后运行或debugging它。
您可以在屏幕截图中看到grunt jasmine_node_no_coverage
命令的configuration。 请注意,我在全球安装了grunt。
尝试一下grunt-debug-task
。
它类似于节点debugging器。 只需运行grunt debug taskname
我试了一下。 它有时打破,但似乎工作。