Nos*_*ama 9 c# nunit rhino-mocks mocking nunit-mocks
我试图在C#中模拟出System.net.Sockets.Socket类 - 我尝试使用NUnit模拟但它不能模拟具体的类.我也尝试过使用Rhino Mocks,但它似乎使用了该类的真实版本,因为它在调用Send(byte [])时抛出了SocketException.有没有人使用任何模拟框架成功创建和使用Socket模拟?
Jam*_*nes 14
每当我遇到Moq的这些问题时,我最终都会创建一个接口来抽象出我无法模拟的东西.
因此,在您的实例中,您可能有一个实现Send方法的ISocket接口.然后让你的模拟框架模拟而不是.
在您的实际代码中,您将拥有这样的类
public class MySocket : ISocket
{
System.Net.Sockets.Socket _socket;
public void MySocket(System.Net.Sockets.Socket theSocket)
{
_socket = theSocket;
}
public virtual void Send(byte[] stuffToSend)
{
_socket.Send(stuffToSend);
}
}
Run Code Online (Sandbox Code Playgroud)
不确定这是否符合您的需求,但这是一个选择.
| 归档时间: |
|
| 查看次数: |
5631 次 |
| 最近记录: |