2017-01-12 13 views
0

このプロジェクトでは、さまざまなApiテストケースで同じメソッドにアクセスする必要があります。現在、私たちはすべてのApiテストケースでこれらのメソッドをコピーしてコピーしています。これらのメソッドを共通の方法で作成し、そこからアクセスすることは可能ですか?異なるApiのテストケース間でPostmanスクリプトを再利用することは可能ですか?

これらのメソッドをグローバル変数に格納することは可能です。それは郵便配達でうまくいくでしょうが、それはニューマンで実行中に失敗します。

+0

コレクションと環境変数ファイルを提供してください。 newmanに使用するコマンドと、取得するエラーメッセージも指定してください。それは問題の原因を明らかにするかもしれない。 – AlexG

答えて

1

これについては、2つの方法があります。どちらも「ハッキー」であり、それは、それらがPostmanが他の目的のためにできることの副産物であることを意味します。

  1. 関数を作成し、それをウィンドウオブジェクトの変数に割り当てます(there's an example in one of the the GitHub threads on the Postman project)。引用:私はハックの回避策を見つけた

は、グローバルオブジェクトの内部テストを越え を共有したい機能をラップすることです。あなたはそれ

前に「窓」を配置する必要が せずにその機能を呼び出すことができます後に実行されているすべてのテストで

// window.{name of wrapper} 

window.Utils = { 

    percentChange: function(val1, val2) { 

     return (((val1 - val2)/val2) * 100).toFixed(2) + '%'; 

    } 

}; 

:あなたの最初の事前要求スクリプト では、次のようになります

私は実際にこれが仕事を得るために管理することができませんでした、プラス私は一度だけ定義されるだろう枠組みを作りたかったので、それは、私の場合のために実行可能ではなかったです任意の要求で利用可能です。

  1. ブロガー - 申し訳ありませんが、元のブログ記事が見つかりませんでした。私が最終的に成功した方法を提案しました。 編集:The almost exact solution is showcased on a blogpost (TIP #5: reuse code)、公式のポストマンブログ。

    2.1再利用可能なコードを作成し、それを環境変数またはグローバル変数として保存します。

    2.2事前要求スクリプトまたはテストスクリプトでは、前の手順で定義した変数のevalを呼び出します。

NB: - 問題をデバッグしたり、保存されている再利用可能なコードを変更するアプローチのいずれかでの一つの大きな問題があります。私は、再利用可能なコードの一貫性のない動作がどこから来たのかを判断する必要があるときに、この問題に苦労しました。基本的に、私は多くのconsole.logを使用して終了しました。

+0

すばらしい説明をありがとう! –

+1

あなたはこの記事を意味するかもしれません:http://blog.getpostman.com/2017/07/28/api-testing-tips-from-a-postman-professional/それは_TIP#5段落の2番目のオプションを記述しています:コードを再利用してください。 – Torsten

+0

+ Torsen - ありがとう!私はブログ記事へのリンクを使って自分の答えを更新しました。 –

関連する問題