【发布时间】:2015-12-08 06:18:04
【问题描述】:
我已经开始使用 MEAN 堆栈,目前正在使用 Super Test 编写 REST 单元测试
我希望我的日志文件更加清晰,以便我可以轻松查看成功和失败的测试。
我希望为我认为来自 SuperTest 的实际 rest API 调用抑制控制台输出。
这张图片显示了我想要抑制的日志。
【问题讨论】:
标签: mocha.js supertest should.js
我已经开始使用 MEAN 堆栈,目前正在使用 Super Test 编写 REST 单元测试
我希望我的日志文件更加清晰,以便我可以轻松查看成功和失败的测试。
我希望为我认为来自 SuperTest 的实际 rest API 调用抑制控制台输出。
这张图片显示了我想要抑制的日志。
【问题讨论】:
标签: mocha.js supertest should.js
我认为它实际上来自 expressjs/morgan。我通过将 env 设置为 test 并为 test env 禁用 morgan 来解决它。
在我的测试文件中:
process.env.NODE_ENV = 'test';
在 app.js 中:
if(app.get('env') !== 'test') app.use(logger('dev'));
【讨论】:
您可以设置 morgan 以接受跳过功能。
然后,例如,您可以打开/关闭一个 env 变量 - 或定义您自己的跳过逻辑以暂时静音日志记录。
app.use(
logger('dev', {
skip: function(req, res) {
return process.env.MUTE_LOGGER === 'on';
},
}),
);
【讨论】: