【发布时间】:2014-11-17 19:04:36
【问题描述】:
我正在使用 WebStorm 来运行 grunt 任务。调试器成功停止在 Gruntfile.js 文件中的断点处,但不在我的任务文件中。
在 Gruntfile.js 中,我注册了一个这样的任务:
grunt.initConfig({
... configuration ...
});
grunt.registerTask('myTask', ['mocha:myTask']);
当我在相应的 js 文件中为测试“myTask”设置断点时,它不会停止。 如何调试 grunt 测试?
--- 更新 ------------------------------------ ---
所以我尝试了所有可能的解决方案,但它并没有解决我的问题!
我能够调试 grunt 脚本本身,这是调试器实际停止的地方(在 WebStorm 或节点检查器中)。 Gruntfile.js 中的断点也在工作中。
问题是,我无法调试实际的 Grunt 任务本身,像这样在 grunt 中注册: grunt.registerTask('myTask', ['mocha:myTask']);
我还可以调试 mocha 测试本身。但我想调试从 grunt 任务运行器调用的 mocha 测试。有什么想法吗?
【问题讨论】:
-
你是如何加载任务的?
-
也许你可以用它来帮助找到事情停止的地方: grunt.registerTask('debug', function(arg){ grunt.log.writeln(arg); });调用调试任务并传递一个字符串。该字符串将被输出到控制台。
-
@MattBrennan 我已经更新了我的问题...你是这个意思吗?
-
@MBielski 是的,我可以调试它,没问题。但我怎样才能真正调试'loopmocha:myTask'?
-
您是否尝试过在任务文件中使用
debugger;语句?我发现在 webstorm 中经常会解决这样的问题。
标签: javascript node.js gruntjs webstorm