Mit*_*uyn 5 selenium capybara google-chrome-devtools selenium-chromedriver
我希望在将 selenium 与水豚一起使用时,chrome 开发工具能够与窗口分离地打开。
当前 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
Run Code Online (Sandbox Code Playgroud)
以下是如何为 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,
Run Code Online (Sandbox Code Playgroud)
我通过查看了解了如何设置这些首选项~/Library/Application Support/Google/Chrome/Default/Preferences。这是我的主要 Google Chrome 安装存储我的用户首选项的位置,它是 JSON 数据。
devtools您可以在=>下查看所有可能的设置preferences。请注意,所有值都是解析为 JSON 的字符串,因此您需要“双重包装”代码中的所有字符串:'"undocked"'。
您可以打开主 Google Chrome 浏览器并更改 UI 中的设置,然后重新打开首选项文件以查看需要设置的 JSON。
| 归档时间: |
|
| 查看次数: |
922 次 |
| 最近记录: |