用mocha-chai superagenttesting多个同时进行的会话

我正在尝试编写多个套接字连接的testing,我需要多个会话(同时) ,因为它们由服务器端的会话ID标识。

在下面的例子client1将连接和握手将通过与会话ID的cookie,所以我可以使用express-socket.io会话获取该用户的会话数据….

我遇到的问题是,当我想连接第二个套接字,握手数据传递通过显然将是相同的第一个套接字。

我不能只发送一个注销请求,并更改用户,因为我试图testing多人游戏function。

var agent = chai.request.agent(app) describe("authentication", function () { it('login as user', function (done) { agent .post('/login') .send({ username: username, password: password }) .then(function (res) { expect(res).to.have.status(200); expect(res).to.have.cookie('connect.sid'); done() }) .catch(function (err) { done(err) }) }); }) describe("socket tests", function () { var client1, client2; it('can connect to socket', function (done) { client1 = io.connect("http://localhost:3000/", options); client1.on('connect', () => { done(); }) }); it('can connect second user to socket', function (done) { client2 = io.connect("http://localhost:3000/", options); client2.on('connect', () => { done(); }) }); })