有没有办法以编程方式获取 HTTP/2 日志
chrome://net-internals/#http2
通过 selenium 还是命令行选项?
我想使用 HTTP/2 进行自动化测试,并且我正在使用 selenium-chromedriver。
我知道您可以从 chromedriver 访问 perflog,但是这些似乎隐藏了许多 HTTP/2 特定的内容,例如优先级或流 ID。
您可以使用 Fiddler Core C# API
Fiddler.FiddlerApplication.AfterSessionComplete += FiddlerApplication_AfterSessionComplete;
Fiddler.FiddlerApplication.Startup(8888, FiddlerCoreStartupFlags.Default);
Fiddler.FiddlerApplication.AfterSessionComplete += delegate(Fiddler.Session oS)
{
Monitor.Enter(oAllSessions);
oAllSessions.Add(oS);
Monitor.Exit(oAllSessions);
};
Fiddler.FiddlerApplication.Shutdown();
查看官方文档,你需要更多代码,但最终你会拥有所需的一切。
可以使用
--log-net-log=output.json
启动 chrome。
但是,目前 chromedriver 中存在一个错误,会截断日志。 https://bugs.chromium.org/p/chromedriver/issues/detail?id=1688#c1