如何使用NodeJ在Mocha中模拟客户端和服务器。 具体来说,我有以下代码:
app.post ('path name', function (req, res) {
// Some Action
res.send(response);
});
我想模仿req
,res
参数并测试res
(状态,标题,消息)。
答案 0 :(得分:19)
Mocha本身不提供模拟/存根/间谍类型功能。 Sinon是一个受欢迎的图书馆。主页包含测试ajax及其Fake XMLHTTPRequest对象的示例。
答案 1 :(得分:4)
我发现Node-Fakeweb有用
var request = require('request');
// Mocking a client request
request.get({ uri: 'URI', body: 'body' }, function (err, resp, body) {
// Some Action
});
});
答案 2 :(得分:1)
您可以使用带有supertest的mocha来模拟请求。这是一个关于如何做到这一点的精彩教程: http://thewayofcode.wordpress.com/2013/04/21/how-to-build-and-test-rest-api-with-nodejs-express-mocha/