2016-08-03 3 views
0

loadtesting結果を取得する必要があります:私(ユーザーIDとゲーム名)に関するサーバー(投稿)情報を送信し、サーバーはプレーヤーのハンドルとセッションIDを割り当てます。私はこれらを取り戻したいのですが、問題は私がURLで見つけることができるということです(url.com/#playerhandle=number & sessionid = numberのように表示されます)、砲兵を使ってそれらを取得できないようです。砲兵のテスト結果を取得する

{ 
"config": { 
    "target": "sever/game", 
    "phases": [ 
     {"duration": 10, "arrivalRate": 200} 
    ] 
}, 
"scenarios": [ 
    { 
     "name": "test1", 
     "flow": [ 
      {"post": { 
       "url": "/initialize", 
       "json": {"userId": "{{ Date.now() }}", "gameName": "game_Blood"} 
      } 
     }, 
      {"get": { 
       "url": "/initialize", 
       "body": "playerHandle={{ ph }}&sessionId={{ sid }}" 
      }} 
     ] 
    } 
] 

}

これは私がこれまでに得たものです。明らかに、これは動作しません。何かアドバイス?

答えて

2

すぐに飛び出したスクリプトに問題がいくつかあります:

  1. Date.now()は、テンプレートで使用されている - 任意のJS式がサポートされていないと動作しないこと。 userIdの値は、代わりに外部のCSVファイルから読み取ることができます。reading variables from a fileのドキュメントを参照してください。
  2. セッションIDとプレーヤーハンドルがURLでのみ使用可能な場合(サーバーはPOSTリクエスト後にそのURLにリダイレクトされますか?)、そのURLはafterResponse hook-response.headers.locationで抽出できます。要求された値が抽出されると、新しい値をcontext.varsに挿入することによって、後続の要求に利用できるようになります。