我在解决方案中使用了以下nuget软件包
使用以下代码,我正在创建一个Chrome驱动程序实例
ChromeOptions options = new ChromeOptions();
//Get Performance Logs from Network tab
var perfLogPrefs = new ChromePerformanceLoggingPreferences();
options.PerformanceLoggingPreferences = perfLogPrefs;
options.SetLoggingPreference("performance", LogLevel.All);
options.AddUserProfilePreference("intl.accept_languages", "en-US");
options.AddUserProfilePreference("disable-popup-blocking", "true");
options.AddArgument("test-type");
options.AddArgument("--disable-gpu");
options.AddArgument("no-sandbox");
options.AddArgument("start-maximized");
options.LeaveBrowserRunning = true;
IWebDriver driver = new ChromeDriver(options);
但是在创建Chrome驱动程序实例时,出现以下错误消息
无效的参数:“ firstMatch”的条目0无效 来自无效的参数:perfLoggingPrefs已指定,但未启用性能日志记录
请问我需要进行哪些更改,以获取最新版本的Chrome和Selenium驱动程序的性能日志
当我使用较低版本的Chrome驱动程序(2.35.0)时,可以使用以下代码检索性能日志
var logs = driver.Manage().Logs.GetLog("performance");
for (int i = 0; i < logs.Count; i++)
{
Console.WriteLine(logs[i].Message);
}
答案 0 :(得分:2)
使用Selenium WebDriver(v4.0.0-alpha04)和Selenium.Chrome.WebDriver(v79.0.0)并使用以下代码,我可以检索性能日志。
ChromeOptions options = new ChromeOptions();
//Following Logging preference helps in enabling the performance logs
options.SetLoggingPreference("performance", LogLevel.All);
//Based on your need you can change the following options
options.AddUserProfilePreference("intl.accept_languages", "en-US");
options.AddUserProfilePreference("disable-popup-blocking", "true");
options.AddArgument("test-type");
options.AddArgument("--disable-gpu");
options.AddArgument("no-sandbox");
options.AddArgument("start-maximized");
options.LeaveBrowserRunning = true;
//Creating Chrome driver instance
IWebDriver driver = new ChromeDriver(options);
//Extracting the performance logs
var logs = driver.Manage().Logs.GetLog("performance");
for (int i = 0; i < logs.Count; i++)
{
Console.WriteLine(logs[i].Message);
}
希望这会有所帮助。
这些天来,我一直在将以下两行与Selenium WebDriver和Chrome驱动程序的最新版本一起使用,无法弄清问题所在,而对于最新版本,则不需要以下两行代码。
var perfLogPrefs = new ChromePerformanceLoggingPreferences();
options.PerformanceLoggingPreferences = perfLogPrefs;