用软件testingnetworking中断

我有一个Windows中的networkingC ++程序,我想在不同的时间testingnetworking断开连接。 我有什么select?

目前我是:

  1. 实际上从我的电脑后面断开网线
  2. 使用ipconfig / release
  3. 使用cports程序完全closures套接字

尽pipe这些方法都不适合我,但我想更容易地模拟networking问题。

我想有时连接失败,有时套接字读取失败,有时套接字写入失败。 如果有一些效用可以用来模拟这些types的问题,那将是非常好的。

在这个模拟不良的networking运行时,能够build立一些自动的unit testing也是很好的。

您可能需要抽象网络层,然后可以进行单元测试,在适当的位置插入有趣的失败事件。

我能想到的最接近的是与Shunra的VEDekstop类似的东西。

在数据库应用测试中模拟高延迟和低带宽

Shunra VE桌面标准版是一款基于Windows的客户端软件解决方案,可模拟广域网链接,以便您可以在各种当前和潜在的网络条件下(直接从您的台式机)测试应用程序。

你可以继承你使用的任何库类来管理你的套接字(如果你正在使用MFC,大概是CAsyncSocket或者CSocket),覆盖你想测试的失败的方法,并且在你的覆盖中插入适当的测试代码。

有一些方法可以使用,这取决于你想测试的级别。 对于功能级别,可以使用XUNIT测试框架来模拟一个响应。 对于软件级别,您可以使用本地代理服务器来控制连接。