单元测试网络连接

时间:2009-09-16 06:28:53

标签: unit-testing network-programming

我正在进行单元测试,我需要找到一种方法来模拟数据库事务期间的断开连接,而无需实际或物理地移除网络电缆。该过程必须是自动化的,因为这只是更大规模的单元测试的一部分。我需要检查回滚是否得到相应的处理

5 个答案:

答案 0 :(得分:5)

您可以模拟Connection并在需要断开连接时抛出异常。

答案 1 :(得分:1)

您可以停止数据库服务器进程。如果您让我们知道哪个数据库平台,我相信我们中的一个人会为您提供一个shell命令,您可以在单元测试中执行。

善,

答案 2 :(得分:1)

编写一个代理,将您连接到数据库

例如在python中:http://code.activestate.com/recipes/483730/

然后直接杀死代理以结束连接

答案 3 :(得分:0)

如果您使用的是C#或.Net,则可以使用Typemock伪造连接并返回断开连接效果。

答案 4 :(得分:0)

我只需要禁用此网络。我所做的是通过C#调用DOS命令NETSH为我的测试pc分配一个不存在的网关,从而禁用或切断网络连接,执行测试用例,然后将其设置回原来再次启用连接。感谢您的回复..:D