监控Chrome网络流量(XHR数据包)

时间:2017-07-06 12:57:22

标签: javascript google-chrome networking phantomjs protractor

我有一个要测试的webapp。我在使用protractorJS进行测试,点击不同的按钮。 某些按钮会触发POST请求,并且webapp正在等待该点的答案。答案可能需要30或40秒才能进入。如果我查看Chrome开发者工具,我会看到网络应用程序发送GET数据包以获得每2秒的状态。状态可以是waitingfailedsuccessful

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

基本上我想用量角器自动点击按钮后调用一个函数,这个函数应该查看每个正在进入的数据包,当它读取状态为successful时应该停止。如果超过60或70秒,该功能应该超时。

1 个答案:

答案 0 :(得分:0)

点击触发POST方法的按钮后,你应该每隔n秒开始一个循环监听另一个端点(GET)(你写的那个应用每2秒做一次)。

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

循环将阻止您超时。

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