我在Windows中有一个网络C ++程序,我想在不同时间测试网络断开连接。我有什么选择?
目前我是:
- 实际上从我的计算机背面断开网络线
- 使用ipconfig / release
- 使用 cports 程序完全关闭套接字
这些方法都不适合我,我想更容易模拟网络问题。
我希望有时连接失败,有时套接字读取失败,有时套接字写入失败。如果有一些实用程序可以用来模拟这些类型的问题,那就太好了。
能够构建一些自动单元测试同时模拟坏网络也是很好的。
我在Windows中有一个网络C ++程序,我想在不同时间测试网络断开连接。我有什么选择?
目前我是:
这些方法都不适合我,我想更容易模拟网络问题。
我希望有时连接失败,有时套接字读取失败,有时套接字写入失败。如果有一些实用程序可以用来模拟这些类型的问题,那就太好了。
能够构建一些自动单元测试同时模拟坏网络也是很好的。
您可能希望抽象网络层,然后您可以在适当的位置进行单元测试以注入有趣的失败事件。
您可能希望抽象网络层,然后您可以在适当的位置进行单元测试以注入有趣的失败事件。
我能想到的最接近的是做类似的事情 VEDekstop 来自Shunra ..
Shunra VE Desktop Standard是一种基于Windows的客户端软件解决方案,可模拟广域网链接,因此您可以直接从桌面在各种当前和潜在的网络条件下测试应用程序。
您可以子类化用于管理套接字的任何库类(如果使用MFC,可能是CAsyncSocket或CSocket),覆盖要测试其失败的方法,并在覆盖中插入适当的测试代码。
您可以使用一些方法,这取决于您要测试的级别。对于功能级别,您可以使用XUNIT测试框架来模拟响应。对于软件级别,您可以使用本地代理服务器来控制连接。