2017-08-30 16 views
2

以下は私の問題です:変数に格納されている配列にデータを格納する方法は?

私は今、システムをテストしていますが、これはすべてのリクエストに複数のIDがあります。 2つのIDが配列に格納しておき、応答を後でもう一度実行させたいのです。

後のボディは、私が

{ 
"id" = 1234; 
"Name" = "Meier" 
} 

だから、私は変数に1つのIDを保存することができると

var body = JSON.parse(responseBody); 
postman.setEnvironmentVariable("ID", body.id); 

で正常にIDを保存受け取るあるが、2番目を置くことができませんそれに1つ。そのためには、要求を複製し、2番目の変数を設定し、必要なケースが変更されるたびにコードを変更する必要があります。

ここで知りたいことは、複数のIDを環境変数に格納して、コレクションの末尾の応答と比較するにはどうすればよいですか。

答えて

0

私は郵便配達に完全に慣れていないんだけど、私が正しく理解することだし、あなたが応答からIDのを保存したい場合は、あなたのようなもの使用することができます -

var body = JSON.parse(responseBody); 
var storedIds = postman.getEnvironmentVariable("ID"); 

if(storedIds) { 
    storedIds.push(body.id) 
} else { 
    storedIds = [body.id] 
} 

postman.setEnvironmentVariable("ID", storedIds); 

編集

私自身のグーグルでは、郵便配達員の環境変数に配列を格納できないようです。したがって、あなたがこのような何かやってみてください - あなたはそれの上に戻ってループに出て、それを読みたいと思うか、あなたが文字列を分割します

var idsArray = postman.getEnvironmentVariable("ID").split(',') 

を使用することができますやりたいどんなときに

var body = JSON.parse(responseBody); 
var storedIds = postman.getEnvironmentVariable("ID"); 

if (storedIds) { 
    storedIds = storedIds.concat(',' + body.id) 
} else { 
    storedIds = body.id 
} 

postman.setEnvironmentVariable("ID", storedIds); 

をあなたに配列を与えるために。

+0

これはすばらしいやり方です。初めてこのコードを実行すると、すべて正常に動作します。 2回目に実行すると、「storeIDs.pushは関数ではありません」というエラーが表示されます。 – Pawana

+0

私はグーグルでやりましたが、郵便配達環境変数に直接配列を格納することはできません。更新された回答をご覧ください。 –

関連する問題