我有一个项目,它从我想测试的 node.js 服务器对 Twitter 的 API 进行一些调用。但是,我不想测试 Twitter API(OAuth 和我正在调用的实际 API),所以我认为最好将其 stub 。
我发现 sinon.js 据说支持这个。我还没有找到如何执行此操作的示例,并且想知道以前是否已经这样做过。如果是这样,查看一些示例代码真的很有帮助。
最佳答案
调用 API 做什么?
假设您使用一个名为 api.call('url', function (error, response) {...})
的方法:
你可以用 sinon 轻轻地或任何你喜欢的方式“伪造”回调。
轻轻使用示例:
gently.expect(api, 'call', function (url, callback) {
assert.equal(url, 'http://api.twitter.com/...');
callback(Error('Fake error'), null);
});
关于testing - 如何 stub 用于测试的外部 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6745293/