我想要铬devtools打开从窗口分离时,使用selenium与水豚。
目前,devtools被附加到右侧(默认)。
我使用以下代码:
Capybara.register_driver :chrome do |app|
capabilities = Selenium::WebDriver::Remote::Capabilities.chrome(
chromeOptions: {
args: %w[auto-open-devtools-for-tabs], # <- this works!
prefs: {'devtools.open_docked' => false} # <- has no effect!
# also tried {devtools: {open_docked: false}}
}
)
Capybara::Selenium::Driver.new(
app, browser: :chrome, desired_capabilities: capabilities
)
end发布于 2022-08-05 05:06:18
下面是如何配置Capybara的Chrome首选项,以便在默认情况下解除开发工具的停靠。您还可以配置要选择的默认选项卡(我希望默认情况下“控制台”选项卡处于活动状态)。
options = Selenium::WebDriver::Chrome::Options.new
options.add_preference(
'devtools',
'preferences' => {
'currentDockState' => '"undocked"', # Or '"bottom"', '"right"', etc.
'panel-selectedTab' => '"console"',
}
)
...
Capybara::Selenium::Driver.new(
app,
browser: :chrome,
options: options,
desired_capabilities: capabilities,我想出了如何通过查看~/Library/Application Support/Google/Chrome/Default/Preferences来设置这些首选项。这是我的主要Google安装存储用户首选项的地方,也是JSON数据。
您可以在devtools => preferences下查看所有可能的设置。请注意,所有的值都是被解析为JSON的字符串,因此您需要“双包装”代码中的任何字符串:'"undocked"'。
您可以打开主Google浏览器并更改UI中的设置,然后重新打开首选项文件,查看需要设置什么JSON。
https://stackoverflow.com/questions/47932301
复制相似问题