有没有办法模拟对网络套接字的请求



我有一个从不同服务接收数据的应用程序。我正在编写一个测试方法来验证应用程序是否删除了所有外部依赖项。我正在使用 Fiddler 拦截从客户端发送到服务器的请求,并发送我自定义的 json 响应。它与http(s(请求按预期工作,但不能与WEBSOCKETS一起工作。

在 C# 中是否有任何其他工具来模拟 Websocket 连接的请求/响应?

一种典型的方法是将调用包装在可模拟的接口调用中。

interface IWebSocketCaller
{
   Result GetData(); 
}

在您的实际类和模拟类上实现这一点。您还可以使用模拟框架(如 Moq(获得此模拟类

class MockWebCaller: IWebSocketCaller
{
    Result GetData()
    {
       // dummy result
        return new Results();
    }
}

现在假设你的调用类是这样的。

Class CleintClass{
IWebSocketCaller  _caller; 
 ClientClass(IWebSocketCaller caller)
 { 
    this._caller = caller; 
 }
 Result GetData()
 {
    return  this._caller.GetData();
  }
}

现在在测试方法中使用模拟调用方类的客户端类实例。希望这有帮助。

最新更新