ruby-on-rails - Capybara 代理在测试时打开/关闭
问题描述
我正在使用水豚、硒和 geckodriver。
我知道我们可以使用如下代码配置 selenium 以使用代理启动 Firefox:
Capybara.register_driver :selenium do |app|
proxy = Selenium::WebDriver::Proxy.new(http: "127.0.0.1:9999", ssl: "127.0.0.1:9999")
desired_caps = Selenium::WebDriver::Remote::Capabilities.firefox({
firefox_profile: "default",
proxy: proxy
})
Capybara::Selenium::Driver.new(app, {:browser => :firefox, :desired_capabilities => desired_caps})
end
Capybara.current_driver = :selenium
@session = Capybara::Session.new(:selenium)
这将启动一个已配置代理的 Firefox 实例。
Capybara 开始测试后,有没有办法打开/关闭代理?(即:我用代理访问url www.xyz.com
。然后在不关闭firefox实例的情况下,关闭代理,访问www.abc.com
。之后,打开代理访问www.123.com
)
我看到了一个非常接近我正在寻找的答案,实例化水豚浏览器并设置代理,但评论显示它不再有效。
参考:https ://github.com/SeleniumHQ/selenium/wiki/Ruby-Bindings
解决方案
推荐阅读
- mysql - 如何在mysql的日期列中使用多个where条件时获取记录
- javascript - 将 ajax 中的 payment_type 传递给另一个 php 文件
- java - 通过 Java 以编程方式设置“hbase.server.keyvalue.maxsize”
- c++ - 插入 C 结构函数指针
- python - IBM I 系列/AS400 上的 Python
- java - 尝试生成 PDF 时 thymeleaf TempletEngine 处理出错
- php - 在列和行标题重叠时基于数据库信息创建 HTML 表格内容
- c# - 当我尝试格式化 10/24/2018 12:00:00 AM 时,格式化日期时间返回 24-10-2018T00:00:00
- ios - VNRectangleObservation - 提供观察边界框的四个坐标 - 基于哪个参考?
- twitter-bootstrap - 如何将图标移动到此社交按钮的中心?