websocket 在Cypress中模拟Web Socket时,无法设置未定义(设置“listeners”)模拟套接字库的属性

6tqwzwtp  于 2022-11-24  发布在  其他
关注(0)|答案(1)|浏览(140)

我的cypress测试文件中有一个模拟服务器

const getServer = () => {
    return new Cypress.Promise(resolve => {
        const mockServer = Server('Websocket URL')

        let mockSocket
        mockServer.on('connection', (socketHandle) => {
           resolve(socketHandle)
        })
    })
}
const socketPromise =  getServer()

每次我想从我的Web Socket字向我的客户端发送消息时,我都会使用

cy.wrap(socketPromise).then((mockSocket) => {
    mockSocket.send({fixture: 'WebSocketMocks/WebSocketInitialised.json'})
})

但是,我在堆栈跟踪中得到了来自模拟套接字库的错误

var EventTarget = function EventTarget() {
> 742 |   this.listeners = {};
      | ^
  743 | };

干杯:)

q7solyqu

q7solyqu1#

您可能复制/粘贴了与我相同的代码。
替换:

const mockServer = Server('Websocket URL');

签署人:

const mockServer = new Server('Websocket URL');

相关问题