基本上我需要的是一种自动化以下操作结果的方法:
打开一个新标签;
在开发者工具中打开网络标签;
加载一个 URL;
选择“全部保存为 HAR”。
通常,建议的解决方案涉及使用PhantomJS、browsermob-proxy或pcap2har;这些不适合我的情况,因为我需要处理SPDY流量。
我试图深入研究Google Chrome Extensions API,确实我设法自动化了一些任务,但对于 HAR 文件生成方面的问题仍然没有运气。现在这种方法特别有前途,但我仍然不知道如何使用它。
换句话说,我需要谷歌的人做这个实验。请注意以下事项:
我们将 Chrome 的远程调试界面与自定义客户端一起使用,该客户端启动手机上的浏览器,清除其缓存和其他状态,启动网页加载,并接收 Chrome 开发人员工具消息以确定页面加载时间和其他性能指标。
有任何想法吗?
解决方案
出于好奇,我最终得到了一个自动化此类测试的 Node.js 模块:chrome-har-capturer。这也让我有机会深入研究远程调试协议并为通用 Chrome 自动化编写一个较低级别的 Node.js 接口:chrome-remote-interface。