我正在尝试创建一个运行mocha测试的grunt自定义任务但是我无法弄清楚如何让mrunt从mocha中获取彩色输出并像直接运行mocha命令时那样显示它。即:咕噜声剥掉颜色或不通过它们。这是艰巨的任务:
var exec = require("child_process").exec;
grunt.registerTask('mocha', 'Run unit (Mocha) tests.', function () {
var done = this.async();
var cmd = "mocha -R Spec tests/mocha/*.js";
exec(cmd, function (error, stdout, stderr) {
if (stdout) {
grunt.verbose.or.write(stdout);
done();
}
});
});
我意识到有一个我可以使用的grunt-mocha插件(并且已经使用过),但我正在尝试消除依赖关系,并且还会对此任务进行一些自定义。
谢谢!
答案 0 :(得分:6)
这主要是this question的副本。
您需要添加--colors
以强制Mocha输出ANSI颜色代码,否则它会自动禁用颜色,因为它不会输出到实际的终端。
var cmd = "mocha --colors -R Spec tests/mocha/*.js";