Javascript 如何使用testcafe拦截和模拟websocket请求

Javascript 如何使用testcafe拦截和模拟websocket请求,javascript,websocket,mocking,automated-tests,testcafe,Javascript,Websocket,Mocking,Automated Tests,Testcafe,出于功能测试的目的,我试图覆盖一些WebSocket请求 我已经尝试过使用截取和模拟,正如这里所建议的,但是这似乎只适用于HTTP,并且只能更新WSS中的状态代码。WSS中的消息是JSON格式的,我需要覆盖它 import { RequestMock } from 'testcafe'; import { debug } from 'util'; const mockStream = new RegExp('test\/socket.io\/v2\/.?'); const ipUrl =

出于功能测试的目的,我试图覆盖一些WebSocket请求

我已经尝试过使用截取和模拟,正如这里所建议的,但是这似乎只适用于HTTP,并且只能更新WSS中的状态代码。WSS中的消息是JSON格式的,我需要覆盖它

import { RequestMock } from 'testcafe';
import { debug } from 'util';


const mockStream = new RegExp('test\/socket.io\/v2\/.?');

const ipUrl = 'https://example.com';
const mockedResponse = Buffer.from([0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x01, 0x00, 0x01]);

const mock = RequestMock()
    .onRequestTo(mockStream)
    .respond(mockedResponse, 101, {
        'access-control-allow-credentials': true,
    });

fixture `Fixture`
    .page(ipUrl)
    .requestHooks(mock);
test('Mocking', async t => {
    await t
    .debug()
        .click('#button')
        .wait(5000)
        .debug();
});

目前,无法拦截WebSocket请求。 我已经在TestCafe存储库中为这个案例创建了一个。
跟踪它以了解我们实现此功能的进度。

您应该添加代码尝试,以便我们能够帮助您。我已经添加了它。我以为不需要。我等会儿再看。你应该检查这个指南。遵循这些步骤将帮助您获得更好的答案。目前的情况如何?尚未实施。您可以在以下位置跟踪问题: