在PHPUnit中模拟丢失的连接

时间:2016-04-07 12:35:43

标签: php phpunit

我有一个curl包装器类,我正在编写单元测试。包装器类能够检测丢失或更改的连接并相应地重新启动下载。它通过跟踪固定间隔下载了多少数据来实现此目的。

有没有办法在PHPUnit测试中操作互联网连接?

2 个答案:

答案 0 :(得分:0)

不直接用于PHPUnit测试,但可能仍然相关:

你可以采用硬核模式:拔下以太网线或关掉wifi。

严重的是,

在Linux和Mac OS X上,您可以尝试使用ipfw

  • sudo ipfw pipe 1 config bw 56Kbit/s delay 200 plr 0.2
  • sudo ipfw add 1 pipe 1 ip from any to any

并使用sudo ipfw delete 1

将其关闭

还有comcast这是一个非常好用的工具!

可悲的是,我不知道在Windows上可以使用什么。

另外this thread could be related

答案 1 :(得分:0)

编写mock object以包装网络通信以进行单元测试。 在那个模拟类中,你可以自由地实现任何类型的行为,例如在特定情况下中止连接,这似乎与您的应用程序的连接断开。