我正在使用Selenium.WebDriver.Chrome 2.40.0
根据文档,允许以下内容
var co = new ChromeOptions();
co.SetLoggingPreference(LogType.Browser, LogLevel.All);
co.SetLoggingPreference(LogType.Client, LogLevel.All);
co.SetLoggingPreference(LogType.Driver, LogLevel.All);
co.SetLoggingPreference(LogType.Profiler, LogLevel.All);
co.SetLoggingPreference(LogType.Server, LogLevel.All);
但是,当我实际尝试访问Client
,Server
和Profiler
日志时,(在stderr上)我得到了
Starting ChromeDriver 2.38.552522 (437e6fbedfa8762dec75e2c5b3ddb86763dc9dcb) on port 56426
Only local connections are allowed.
[1529414019.263][WARNING]: Ignoring unrecognized log type: client
[1529414019.266][WARNING]: Ignoring unrecognized log type: profiler
[1529414019.266][WARNING]: Ignoring unrecognized log type: server
访问这三个日志对象将很有帮助。我该如何访问它们?
其他详细信息
根据有关LogType的文档,存在5个可能的值:Browser
,Client
,Driver
,Profiler
和Server
。塔伦·拉尔瓦尼(Tarun Lalwani)建议(参见评论)也有一个Performance
,但我看不到任何迹象。
我不明白为什么文档说有五个,但是在操作上只有Browser
和Driver
。
答案 0 :(得分:1)
如果您查看ChromeDriver源代码
} // namespace
const char WebDriverLog::kBrowserType[] = "browser";
const char WebDriverLog::kDriverType[] = "driver";
const char WebDriverLog::kPerformanceType[] = "performance";
bool WebDriverLog::NameToLevel(const std::string& name, Log::Level* out_level) {
for (size_t i = 0; i < arraysize(kNameToLevel); ++i) {
if (name == kNameToLevel[i].name) {
*out_level = kNameToLevel[i].level;
return true;
}
}
return false;
}
它仅支持browser
,driver
和performance
。对于其他警告,这是正确的
答案 1 :(得分:0)
因此canonical answer是(鼓声)...
仅列出了可能的日志类型。例如,服务器 仅当您使用实现此功能的服务器时才可用 日志(例如selenium服务器)。您可以查看哪些日志类型是 使用GetAvailableLogTypes方法从您的终结点计算机获取