我正在使用passport.js作为后端库来处理来自 google、Facebook 和 Twitter 等 OAuth 提供商的身份验证。
因为我现在正在编写测试,所以我想避免创建自己的帐户只是为了测试。
那么,对于使用过的提供者,是否有类似开放凭证的东西?
你如何在测试中模拟账户?
我正在使用passport.js作为后端库来处理来自 google、Facebook 和 Twitter 等 OAuth 提供商的身份验证。
因为我现在正在编写测试,所以我想避免创建自己的帐户只是为了测试。
那么,对于使用过的提供者,是否有类似开放凭证的东西?
你如何在测试中模拟账户?
看看多护照策略中包含的测试。他们经常为整个交互(用于单元测试)提供很好的模拟示例。集成测试将需要整个流程(可能还需要一些 UI 自动化工具)。这是Facebook 策略测试的示例。
我不知道来自这些提供商的任何“仅限开发”凭据。在任何情况下,您都必须设置回调 URL 指向您的应用程序。希望你不会经常这样做......
在我们的系统(它是身份验证的中介)中,我们决定为所有知名身份提供者提供默认凭据,如果您不想在测试时处理它。在生产中,建议您自己注册。最终的架构会略有不同,但不确定它是否符合您的需求:
App (passportjs) ->我们的服务器-> * 身份提供者
注意:即使我们的服务是付费服务,免费套餐也允许您进行没有过期的测试。