2016-08-03 55 views
0

我需要獲得加載測試結果:我發送有關我(用戶ID和遊戲名稱)的服務器(後期)信息,並且服務器爲我分配播放器句柄和會話ID。我想讓這些回來,但問題是,我只能在網址中找到它們(它們看起來像這樣: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?),那麼可以使用afterResponse hook - response.headers.location來提取那些URL將包含該URL。提取所需值後,可通過將新值插入context.vars,將其提供給後續請求。