Grunt并发任务没有输出任何内容

时间:2013-11-07 12:21:43

标签: node.js gruntjs grunt-contrib-watch

我希望我的基于Grunt的设置同时运行“test”(即单元测试)和“server”(即Web服务器),这样我就可以grunt testAndServer同时运行(并在更改任何文件时更新)在同一终端中。

代码(大部分内容基于yo angular脚手架):

// in initConfig:
concurrent: {
  testAndWebServer: [
    'karma',
    'watch'
  ]
},

以后

grunt.registerTask('testAndServer', function (target) {
  if (target === 'dist') {
    return grunt.task.run(['build', 'open', 'connect:dist:keepalive']);
  }

  grunt.task.run([
    'clean:server',
    'concurrent:server',
    'autoprefixer',
    'compass',
    'connect:livereload',
    'open',
    'concurrent:testAndWebServer'
  ]);
});

这实际上有效,但我在终端(PowerShell)窗口中没有得到任何输出。我希望业力任务能够显示测试结果。我该如何实现这一目标?

我在Windows 7上运行Node.js v0.10.20,在四核机器上运行。

1 个答案:

答案 0 :(得分:6)

我刚刚意识到我错过了logConcurrentOutput选项。

这使它起作用:

  testAndWebServer: {
    tasks: ['watch', 'karma'],
    options: { logConcurrentOutput: true }
  },