認証トークンを取得し、後続のすべてのテスト要求のヘッダーに含める要求を送信する必要があります。このトークンは毎回変更されますが、リクエストを送信し続ける限り、テストセッション全体に有効です。各フィーチャファイルでは、このトークンを取得するために別のフィーチャファイルを呼び出すことができます。しかし、私はすべてのフィーチャーファイルでこれをしたくありません。私は、テストの開始時にトークンを一度取得し、すべての機能ファイルに使用したいだけです。それ、どうやったら出来るの?私はGitHubの空手情報を読んだが、答えは見つからなかった。空手APIのすべてのフィーチャーファイルのグローバルヘッダーを設定する方法
1
A
答えて
0
デモの2番目の例は、すべての質問に答えます。karate-demo。
EDIT1:申し訳ありませんが、あなたの質問があまりにも速かったです。 karate-config.js
にkarate.call()
を使用すると、すべての機能ファイルに適用されます。私はこれをお勧めしません。なぜなら、あなたはいつもこれを必要としないいくつかの機能を持っているからです。フィーチャーの呼び出しを使用し、テストを過度にエンジニアリングしないでください。
EDIT2:私はもう少し考えました。もしあなたがJavaに慣れていれば、各フィーチャーの始めに(あるいはグローバルkarate-config.js
でも)シングルトンを呼び出すことができました。 authトークンのだから、あなたが必要とするものを正確に行うことができ、柔軟性があります。
EDIT3:この質問に基づいて - 私たちはkarate.callSingle()
操作として空手にこの機能を追加し、ここでのドキュメントがあります:https://github.com/intuit/karate/tree/develop#the-karate-object
関連する問題
- 1. Springブートスワッガーアプリケーションのグローバルヘッダーを設定する
- 2. 空手フレームワークのフィーチャーファイルの応答ヘッダー値を読み取る方法は?
- 3. VueJSでGet、Post、Patchのグローバルヘッダーを設定する最良の方法
- 4. Facebookの広告からアクティブなキャンペーンをすべて入手するapi - フィルタを設定する方法
- 5. すべての空手の特徴の値を得る方法(例:baseURL)?
- 6. すべてのフィーチャーファイルをMavenゴールで一緒に実行する
- 7. すべてのJComponentsのデフォルト設定を設定する便利な方法
- 8. facebook graph apiでグループの投稿をすべて入手する方法
- 9. すべてのTabBarItemのアイコンを設定する方法
- 10. ビットフィールドメンバのすべてのビットを1に設定する方法
- 11. gitすべてのプロジェクトのフックを設定する方法
- 12. アプリケーション内のすべてのロガーを設定する方法
- 13. XCGLogger - すべてのログのログレベルを設定する方法
- 14. すべての活動のヒストリーを設定する方法
- 15. TFS APIで特定のビルドを入手する方法
- 16. Azure設定ファイルからすべての設定を取得する方法は?
- 17. 空手 - 空手-config.jsのようなJSONファイルをインポートする方法
- 18. フィーチャーファイルを整理する最良の方法は何ですか?
- 19. すべてのC#プロジェクトをソリューションに設定する方法
- 20. トライですべての子をNULLに設定する方法
- 21. Symfonyコマンドのソート順を手動で設定する方法は?
- 22. popoverPresentationControllerのアンカーポイントを手動で設定する方法
- 23. デルファイでポインタのアドレスを手動で設定する方法
- 24. Feain Oauthベアラトークンの値を手動で設定する方法は?
- 25. テキストビューのパディングを手動で設定する方法は?
- 26. カラーバーの範囲を手動で設定する方法は?
- 27. 剣道用のデータを手動で設定する方法
- 28. すべての空白を無視するようにvimdiffを設定する方法はありますか?
- 29. マルチテナントAPIのAzure API管理を設定する方法
- 30. Google APIエクスプローラで承認ヘッダを手動で設定する方法
ピーター、それは簡単ですので、私は最初の方法を試してみましたが、私のAPIは、すべての要求の認可が必要となります。しかし、私はそれを働かせることはできません。私のkarate-config.jsはこのように見えます。私を助けてください。 function(){ var env = karate.env; karate.log( 'karate.envシステムプロパティは:'、env); VAR資格= { \tログイン名: '管理者'、 \tパスワード: 'mypasswordを' } VARトークン= karate.call( 'GetTokenId.feature'、クレデンシャル); } エラー: WARN com.intuit.karate.ScriptContext - スタートアップの設定に失敗しました。 'karate-config.js' - 機能呼び出しに失敗しました。arg:[オブジェクトオブジェクト] – bhc
@bhc申し訳ありませんが、私があなたが投稿したものから想像することはできません。私は最初に機能の開始時に通常の呼び出しで作業することをお勧めします。この高レベルに卒業してください。呼び出されたフィーチャーファイル名には 'classpath'接頭辞を使用してみてください。すべてのベスト:P –
バージョンを0.2.7から0.6.2に更新したところ、うまくいきました。ご協力ありがとうございました。 – bhc