【问题标题】:Monitor Chrome Network traffic (XHR packets)监控 Chrome 网络流量(XHR 数据包)
【发布时间】:2017-07-06 12:57:21
【问题描述】:

我有一个 webapp 来测试。我得到了一个使用 protractorJS 的测试,它点击了不同的按钮。 某些按钮确实会触发 POST 请求,并且 webapp 从那时起一直在等待答案。答案最多可能需要 30 或 40 秒。如果我查看 Chrome 开发人员工具,我会看到 webapp 每 2 秒发送一次 GET 数据包以获取状态。状态可以是waitingfailedsuccessful

我现在的问题是: 如何查看网络流量并过滤我知道successfulfailed 状态数据包进入的时间点? 我找到了 PhantomJS Network Monitoring

基本上,我想在使用量角器自动单击按钮后调用一个函数,该函数应该查看每个传入的数据包,并在读取状态为successful 时停止。如果需要超过 60 或 70 秒,该函数应该超时。

【问题讨论】:

    标签: javascript google-chrome networking phantomjs protractor


    【解决方案1】:

    单击触发 POST 方法的按钮后,您应该开始在循环中每 n 秒侦听另一个端点 (GET)(您编写的应用程序每 2 秒执行一次)。

    如果状态为waiting - 继续前进,如果是failed - 引发异常并通过测试,如果是successful - 通过测试或做任何你想做的事情。

    循环会阻止你超时。

    您需要考虑是否需要保护自己免受无限循环的影响,例如:处理任务的工人停止工作。那么GET方法可能会返回waiting,循环不会结束,测试也不会停止。

    【讨论】:

    • 是的,你是对的,那将是最好的方法。但我的问题是我如何每两秒听一次 GET?理论上很简单:循环监听并始终检查状态如何,直到状态为failedsuccessful 然后停止循环。但是我如何监控/收听所有传入的包?我没有编写这个 webapp,我不知道内部功能是如何工作的。我只是想监控流量..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-12
    相关资源
    最近更新 更多