我想为我的基于nodejs的API编写BDD测试,该API使用AWS cognito作为用户身份验证服务,但是我不想每次运行构建时都使用真正的cognito服务。
有没有简单而优雅的方法来模拟Cognito调用。
二手框架:

  • Nodejs(Hapi.js)
  • Node.js的
  • aws-sdk
  • 最佳答案

    我们创建了一个aws-sdk-mock npm模块,该模块模拟了所有AWS开发工具包服务和方法。 https://github.com/dwyl/aws-sdk-mock

    真的很容易使用。只需使用服务,方法和 stub 函数调用AWS.mock。

    AWS.mock('CognitoIdentityServiceProvider', 'theCallYouWantToMock', function(params, callback) {
        callback(null, 'success');
    });
    

    然后在测试后通过调用以下方法恢复方法:
    AWS.restore('CognitoIdentityServiceProvider', 'theCallYouWantToMock');
    

    10-07 12:29
    查看更多