google、Facebook、Twitter などの OAuth プロバイダーからの認証を処理するために、 passport.jsをバックエンド ライブラリとして使用しています。
現在テストを書いているので、テストのためだけに独自のアカウントを作成することは避けたいと思います。
では、使用されているプロバイダーのオープン資格情報のようなものはありますか?
テストでアカウントをモックアップするにはどうすればよいですか?
google、Facebook、Twitter などの OAuth プロバイダーからの認証を処理するために、 passport.jsをバックエンド ライブラリとして使用しています。
現在テストを書いているので、テストのためだけに独自のアカウントを作成することは避けたいと思います。
では、使用されているプロバイダーのオープン資格情報のようなものはありますか?
テストでアカウントをモックアップするにはどうすればよいですか?
複数のパスポート戦略に含まれるテストを見てみましょう。インタラクション全体 (単体テスト用) のモックの良い例を提供することがよくあります。統合テストには、フロー全体 (およびおそらくいくつかの UI 自動化ツール) が必要です。Facebook 戦略テストの例を次に示します。
これらのプロバイダーからの「開発のみ」の資格情報は知りません。いずれにせよ、アプリを指すコールバック URL を設定する必要があります。うまくいけば、これをあまり頻繁に行わないでください...
私たちのシステム (認証の仲介役) では、テスト中に対処したくない場合に備えて、よく知られているすべての ID プロバイダーに既定の資格情報を提供することにしました。本番環境では、独自の登録を取得することをお勧めします。ただし、最終的なアーキテクチャはわずかに異なり、ニーズに合っているかどうかはわかりません。
アプリ (passportjs) ->サーバー-> * ID プロバイダー
注: 私たちのサービスは有料ですが、無料利用枠では有効期限なしでテストを行うことができます。