我的应用程序中有一些方法可以发出http请求。有没有一种很好的方法来模拟网络故障和单元测试的不良响应?发出http请求的测试方法
8
A
回答
12
适合Mock Objects应该让你轻松地执行这种模拟关掉你的无线路由器;如果你不熟悉这个概念,这里有一个很好的tutorial。
1
对于网络故障,首先拔掉计算机以太网电缆(或无线d/c)然后拔掉任何电缆可以访问云。
如果通过错误的回应,你的意思是HTTP错误,你可以编写ASP脚本,总是会抛出特定的错误。如果你想测试畸形HTTP数据包,你必须编写一个简单的套接字应用程序来做到这一点。
+0
不知道如何在自动生成系统中集成电缆拔出过程;-) – assylias 2013-03-29 11:20:53
0
拔出你的局域网线,或同时发送请求的:)
1
-1
我们在这种情况下所做的是抽象层进行调用。而不是让你的逻辑直接发出http请求,让你的代码调用一个函数。在这一功能可以是这样的:
if (in_test) {
response = get_test_response();
} else {
response = make_http_request();
}
然后你可以有你的单元测试设置由get_test_response()函数来访问某个值。这样,您可以通过编程方式更改该调用的结果。
1
将使HTTP调用(例如java.net.URLConnection或Commons HttpClient)在接口后面的库包装起来,然后编写模拟故障条件的接口的实现或模拟。
您的接口可以表示您的应用程序需要执行的操作,而不是整个HTTP客户端功能范围。
1
也许Spring test mocks会有一些帮助。
相关问题
- 1. 用一个传出的HTTP请求测试一个void方法
- 2. 多个HTTP请求测试
- 3. 发出HTTP请求UDP-like
- 4. 控制发出HTTP请求的推荐方法?
- 5. 单元测试一个方法与HTTP发布请求嘲讽HttpWebRequest
- 6. 对JMeter测试失败的HTTP请求
- 7. 在Google App Engine测试服务器上发出http请求时发生SSLHandshakeException(Java)
- 8. Laravel请求规则方法确认开关的情况下发出HTTP方法
- 9. 测试角2.0.0组件与HTTP请求
- 10. 单元测试多个HTTP请求
- 11. 在春季测试一个传出的HTTP请求
- 12. 在c#中测试HTTP请求的单元测试#
- 13. 多个同时发出的HTTP请求
- 14. 查找用户发出的http请求
- 15. 移动设备发出的HTTP请求
- 16. 发出HTTP请求的角度服务
- 17. 发出请求的端口+ HTTP
- 18. 监控IE8发出的HTTP请求
- 19. http请求的HTTP请求
- 20. 发送HTTP请求
- 21. Http请求/并发?
- 22. 只有当测试:没有映射发现HTTP请求
- 23. 加特林抛出InvalidActorNameException当测试长查询HTTP请求
- 24. 如何以编程方式发送带请求的HTTP请求?
- 25. 单元测试控制器功能在NodeJS中发出外部HTTP请求
- 26. 尝试使用json请求正文发送http请求\\
- 27. 通过C#代码发出http请求?
- 28. 用曲奇向Golang发出HTTP请求
- 29. Silverlight只发出一个http请求
- 30. 用Netty发出一个http请求
+1模拟它,不要弄乱拉线。 – 2009-06-15 18:46:42
教程链接已过期。 – tokhi 2013-09-19 07:22:16