2011-08-16 339 views
2

我想使用zombie.js無頭瀏覽器測試我的node.js/socket.io應用程序。zombie.js和socket.io(node.js)

不幸的是,當zombie.js應用程序連接到我的應用程序,它報告連接/斷開連接事件的負載。

例如,

Zombie: Firing timeout 234, delay: 1000 
Zombie: GET http://localhost:8000/socket.io/1/?t=1313487267750&jsonp=68 
Zombie: GET http://localhost:8000/socket.io/1/?t=1313487267724&jsonp=69 
connected 
connected 
connected 
Zombie: Firing timeout 237, delay: 2000 
Zombie: Firing timeout 226, delay: 16000 
Zombie: Firing timeout 218, delay: 25000 
disconnected 

看來殭屍不尊重超時延遲,所以我不知道這是否可能是一個原因?

有沒有人試過用socket.io使用殭屍或可以告訴我爲什麼殭屍似乎立即啓動超時而不是等待規定的時間?

+0

你確定這不是殭屍模擬XHR保持socket.io連接打開嗎? – Raynos

+0

是的,可能。我用更好的例子更新了這個問題。我認爲問題可能是XHR請求在規定的超時延遲之後不會發生,而是立即發生。 – bdls

+2

@bdis這可能是殭屍的限制。嘗試用phantomjs複製它 – Raynos

回答

1

包裝起來:我使用Phantomjs,推薦使用@Raynos,它很好地工作。

+0

我遇到了與Zombie相同的場景,你有沒有使用PhantomJS進行ajax測試的任何參考? – balanv

+0

我的意思是對於ajax/socket.io的實現測試 – balanv