如何在NodeJS中模拟ftp服务器进行单元测试

时间:2018-08-25 15:25:03

标签: node.js ftp mocha sinon chai

有人可以告诉我如何模拟FTP连接并从FTP客户端下载文件以在nodeJS中进行单元测试吗?

我正在使用FTP节点模块连接到FTP / SFTP客户端 (https://www.npmjs.com/package/ftp

2 个答案:

答案 0 :(得分:0)

您可以使用类似proxyquire的东西来模拟ftp模块。

答案 1 :(得分:0)

最后找到了模拟FTP客户端的方法... 我们需要像这样在主类上存根。

准备Triger: sinon.stub(Client.prototype,'connect')。withArgs(connect).callsFake(function(options){   this.emit('ready'); });

要触发错误: sinon.stub(Client.prototype,'connect')。withArgs(connect).callsFake(function(options){   this.emit('错误'); });

让connect = {      主机:主机名,      端口:端口,      用户:user,      密码:password }