2014-10-07 73 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秒。