联网应用程序的边界测试

时间:2020-03-05 18:42:12  来源:igfitidea点击:

除了"无连接"外,我还应该测试其他哪些故障模式?我该如何模拟高延迟链接,不可靠的链接或者毫无疑问将在"野外"发生的所有其他疯狂的事情?

无线应用程序如何?如何在不理想的WL环境中测试性能?

解决方案

回答

我们肯定要进行物理测试以拔出电缆。与刚断开连接时相比,在这种情况下,许多网络代码都将引发不同的异常。

回答

要添加到TimK的答案中,如果我们有路由器,请测试拉动路由器上的上行链路,这将测试不良连接,而系统不知道我们丢失了物理链路。

回答

To add to TimK's answer, if you have a router, test pulling the upstream link on the router, this will test a bad connection without your system knowing that you lost the physical link.

另外,如果我们在几秒钟后将其重新插入,则连接不会丢失*。这可以模拟很高的延迟。

*这取决于ISP和路由器。

回答

我们的网络/服务器壁橱是电线的意大利面。我不会走进去开始拔掉东西,以免我碰到了关键任务。 (至少我可以访问它;我敢肯定,许多读者甚至都不知道他们的路由器在哪里。)同样,以太网电缆的两端都需要动手才能到达。

我测试了启用/禁用网络适配器的能力,并且我还将通过家庭的有线Internet连接进行测试。另外,我有安装Tor来创建高延迟连接的想法。

对于无线连接,我有一个金属盒来测试信号消失后会发生什么,但是我注意到网络连接行为非常不同,具体取决于我的测试方式:

  • 将发射器/接收器放在金属盒中
  • 站在厨房的微波炉旁边,打开它
  • 站在一个有混凝土墙的小壁橱里

回答

如果我们使用的是Linux,请尝试使用Virtual Distributed Ethermet(VDE)。

VDE为我们提供虚拟化的交换机/集线器和以太网电缆。我们可以实时调整网络特性,例如延迟,延迟,MTU,每MB错误位,带宽,重复项等,全部实时!