使用Grunt.js运行mocha测试

时间:2013-01-13 10:45:54

标签: javascript phantomjs mocha gruntjs

我已经设置了Grunt.js并编写了我想用mocha-phantomjs测试的测试。

我只需要帮助就可以编写一个将要运行的任务

$ mocha-phantomjs ./tests/index.html 

经过一番环顾后,我发现有一个运行shell命令的繁琐任务但是有没有更简单的方法?

我是新来的咕噜声。我看到他认出了grunt qunit命令。它内置了吗?摩卡不可能有这样的东西吗?我是否必须要求child_process并执行它?

更新:使用child_process并执行命令不等待最终结果

2 个答案:

答案 0 :(得分:12)

您可以将test注册到子进程(就像Yeoman与Testacular一样):

 // Alias the `test` task to run `mocha-phantomjs` instead
  grunt.registerTask('test', 'run mocha-phantomjs', function () {
    var done = this.async();
    require('child_process').exec('mocha-phantomjs ./tests/index.html', function (err, stdout) {
      grunt.log.write(stdout);
      done(err);
    });
  });

在终端中,您只需运行grunt test即可执行测试。

答案 1 :(得分:10)

我知道这是旧的,但有一个grunt-mocha任务在phantomjs中运行mocha测试。