До сих пор я почти ничего не делал с розетками из перьев, и поэтому мне нужна ваша помощь Я написал тест, который проверяет функциональность моей веб-розетки для перемещения пользователей по нужным каналам. Для этого я создал в своем тесте два SocketIo-клиента и позволил им подключаться к веб-сокету с помощью моих собственных помощников, которые также выполняют аутентификацию при установлении соединения. Если я проведу тест самостоятельно, он будет работать нормально. Но как только я запускаю все тесты вместе, тест больше не работает, потому что SocketIo-Clients не могут установить какое-либо соединение. Это можно заметить, поскольку на сервере не инициируется событие подключения.
В моем тесте я делаю:
before((done) => {
server = app.listen(app.get('port'), done);
socketUrl = 'ws://localhost:5555}/';
});
socket = io(socketUrl);
и
after(async () => {
await server.close();
});
I обнаружил, что любой тест, который также выполняется server = app.listen(app.get('port'), done);
перед тестом сокета, приведет к сбою теста сокета. Возможно ли, что await server.close();
действительно не закрывает http-сервер и / или ws-сервер?