阻止外部 Web 服务以模拟“宕机”的策略在测试场景期间?

发布于 2024-08-11 19:49:51 字数 171 浏览 5 评论 0原文

我正在努力将来自外部 Web 服务的数据集成到我的应用程序的客户端中。有人让我测试服务不可用或宕机时的情况。在我们运行测试以查看服务如何降级时,有人对如何暂时阻止该网站有任何建议吗?

对于那些好奇的人,我们正在针对虚拟地球进行测试,但谷歌地图但这适用于任何同样复杂的外部服务。

欢迎任何想法和建议

I am working to integrate data from an external web service in the client side of my appliction. Someone asked me to test the condition when the service is unavailable or down. Anyone have any tips on how to block this site temporarily while we run the test to see how the service degrades?

For those curious we are testing against Virtual Earth, but Google Maps but this would apply to any equally complicated external service.

any thoughts and suggestions are welcome

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

也只是曾经 2024-08-18 19:49:51

创建一些 Mock-Webservice 类或接口(以及注入 )。在那里,您可以测试系统对 Web 服务故障的响应,以及如果 Web 服务请求花费的时间超过预期或实际超时时会发生什么情况。

关于模拟测试的 DeveloperWorks 文章:http://www.ibm.com/developerworks/库/j-mocktest.html

Create some Mock-Webservice class or interface (and inject it). In there, you could test the response of your system to webservice failures and also what happens, if a web-service request take longer than expected or actually time-out.

DeveloperWorks article on mock testing: http://www.ibm.com/developerworks/library/j-mocktest.html

笔落惊风雨 2024-08-18 19:49:51

您需要确保测试最常见的故障模式:

  1. DNS 查找失败
  2. IP 连接失败(一旦 DNS 查找成功)
  3. HTTP 响应不是 200
  4. HTTP 响应不完整或超时
  5. HTTP 响应 200 但返回的 RPC 或文档无效

这些只是我能想到的一些常见的故障模式都会以不同的行为表现出来,您可能希望让您的应用程序显式处理这些行为。

如果您在调用者和服务之间设置一台计算机来在它们之间进行路由,则可以清楚地模拟每种故障模式并修改您的应用程序来处理它们。

You need to be sure to test the most common failure modes for this:

  1. DNS lookup fails
  2. IP connection fails (once DNS lookup succeeds)
  3. HTTP response other than 200
  4. HTTP response incomplete or timeout
  5. HTTP response 200 but RPC or document returned is invalid

Those are just a few common failure modes I could think of that will all manifest themselves with different behaviors that you may wish to have your application handle explicitly.

If you set up a computer between the caller and service that routes between them, you can simulate each of these failure modes distinctly and modify your application to handle them.

Bonjour°[大白 2024-08-18 19:49:51

通过在 hosts 文件中添加无意义的条目来阻止相关域名怎么样?

How about blocking the domain name(s) in question by putting a nonsense entry into the hosts file?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文