2011-12-25 68 views
3

我写了一个Java应用程序,它可以与传统系统进行套接字连接。如何模拟java套接字连接中断?

如何模拟连接失败(例如Socket连接超时,读取超时,网络故障),以便我可以根据异常跟踪添加必要的代码?

+0

回到前面的问题,并通过选择左侧的勾号接受答案。理想情况下,既然你问了一个简单而简洁的问题,你会得到一些可以接受的答案。当答案需要澄清时,您可以添加注释。 – 2011-12-25 11:53:50

+0

谢谢...彼得...... – Hari 2011-12-25 13:45:52

+0

嗅探可以做到http://sniffy.io/docs/latest/#_testing_bad_connectivity – bedrin 2017-10-03 13:00:57

回答

1

使用模拟框架,如Mockito或EasyMock,模拟一个Socket对象。

查看适用于Socket的Javadoc,并在您的单元测试中使您的模拟对象在某些时候失败并抛出异常。

+0

嗯,我正在尝试与Mockito。让我检查并回来 – Hari 2011-12-25 11:36:00

1

你想触发一个实际的失败或测试你的代码在不同的情况下工作吗?

如果是后者,我会创建一个简单的模拟服务器,或者如果这不是实际的代理服务器。关闭出站或传入连接,或停止在某个点发送数据。此时,您可以测试代码的行为如预期。