该问题的解决方法是使用 sinon.stub() 方法来对 AWS SDK 的 S3 服务进行模拟。
以下是代码示例:
const sinon = require('sinon');
const AWS = require('aws-sdk');
const S3 = AWS.S3;
const s3 = new S3();
// 使用 sinon.stub() 方法来模拟 S3 服务的上传功能
sinon.stub(s3, 'upload').callsFake(function(params, callback) {
callback(null, 'success');
});
// 在代码中使用模拟的 S3 服务进行上传
s3.upload(params, function(err, data) {
if (err) {
console.error(err);
} else {
console.log(data);
}
});
// 恢复真实的 S3 服务
s3.upload.restore();