如何使用带有mocha的Passport Google OAuth身份验证来测试Express REST API?

时间:2017-02-13 21:02:41

标签: node.js api tdd mocha passport.js

我正在构建一个应用程序,作为其中的一部分,我在Express上有一个REST API,我想为其编写集成测试。我正在使用" mocha"和" chai-http"要做到这一点,除了我添加身份验证时,一切正常。所以在一个测试中:

alias

我会收到错误,因为我的请求不会来自经过身份验证的会话。我正在使用"护照"使用Google OAuth策略,以便我无法向登录页面发送帖子请求,而我无法想到登录或验证我的请求的方法。 (数据库操作是Sequelize)。如何在应用程序中测试API操作?有标准方法吗?

1 个答案:

答案 0 :(得分:2)

我发现问题的唯一解决方案是使用模拟护照身份验证策略进行测试,如下所示: https://www.npmjs.com/package/passport-mocked 在测试环境中使用它而不是策略。