在javascript执行期间测试互联网连接的丢失

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在javascript执行期间测试互联网连接的丢失相关的知识,希望对你有一定的参考价值。

My problem

我期待测试脚本如何处理因执行而导致的互联网连接丢失。在较低级别,我只需要在脚本中的某个点之后导致许多网络请求失败。

我试图尽可能地将此测试保持为端到端而不模仿任何javascript单元。

My thoughts on how I might achieve this

Chrome在网络标签下的开发工具中进行了有用的切换,模拟了互联网连接的丢失。我想从我正在执行的脚本中切换它(以类似于debugger在sources选项卡下触发断点的方式)。

我怀疑这并不容易,因为如果网页可以触发这一点,它会造成重大的安全漏洞。但是,如果无论如何都要将Chrome打入可能的状态,可能使用扩展程序或Chromium,我会全力以赴。

有没有办法从JavaScript切换Chrome'离线'开发工具?

如果失败,有没有其他方法来模拟连接丢失/导致网络请求从javascript失败? (顺便说一句,我没跟Chrome结婚)

答案

您可以使用debugger权限创建自定义chrome扩展,然后使用attach创建选项卡。然后你会在该选项卡上调用Network.enable,然后启动emulating network conditions(例如离线)

您可以使用onMessageExternal与自定义扩展程序进行通信(例如,告知它在特定时间离线)。

另一答案

更简单的方法是在关键点的Sources选项卡中设置断点,然后在Network选项卡中手动脱机。

以上是关于在javascript执行期间测试互联网连接的丢失的主要内容,如果未能解决你的问题,请参考以下文章

应用程序在后台崩溃,而蓝牙连接长时间丢失

使用本地 Impala 连接执行单元测试用例

iOS UI 自动化:在测试执行期间从测试中切换网络设置

使用 BOSH 时处理 JavaScript 中丢失的消息

MSSQL 连接远程数据库

由于 openfire 连接丢失而丢失消息