2014-10-07 82 views
2

我想使用Frisby.js測試會話超時。所以我想調用我們的登錄API並調用一個API來演示用戶登錄。 然後,我希望frisby.js等待20分鐘以使會話超時,並驗證由於會話超時而導致進一步調用失敗。如何讓frisby.js腳本「睡眠()」?如何使frisby.js腳本在鏈接執行期間「暫停」

回答

-2

使用超時:

setTimeout(function(){ 
    //do whatever after 20 minutes 
    },1200000); //20 min = 1200000ms 
2

在預期沒有被執行使用setTimeout的結果,如下解釋: 我發現https://github.com/vlucas/frisby/issues/200

最簡單的方法是做一個不用彷徨到http://httpbin.org/delay/3延遲3秒,然後在這個請求的後面你做你想做的事情。

+0

這有效,但它不是特別優雅,特別是對於更大的測試,如果你需要更頻繁地等待 – 2015-04-21 16:39:37

5

原來,有一個無證的waits()方法,有效地告訴frisby睡覺。

例如,

frisby.create('Sleep test') 
    .get('http://www.citibikenyc.com/stations/json') 
    .expectStatus(200) 
    .inspectJSON() 
    .waits(5000) 
.toss(); 

將等待執行之前5秒。