【问题标题】:Using Capybara live without RSpec在没有 RSpec 的情况下使用 Capybara
【发布时间】:2014-01-03 14:54:43
【问题描述】:

我想在 RSpec 之外使用 Capybara 进行实时测试。就像我使用纯硒一样。是否可以以这种方式构建场景并记录日志?如果没有,我必须坚持使用 Selenium - 如何使用 Ruby 创建场景和记录日志?

【问题讨论】:

  • 您想将 Capybara 与某种测试框架一起使用来访问断言方法。您可以在 capybara 中使用 selenium 作为驱动程序。或者——我更喜欢——webkit。浏览front page documentation,它就在那里。为什么不想使用 rspec? “纯硒”是什么意思?录音功能?如果录音是你的追求,那么水豚可能不是你的最佳选择。
  • 我不知道“构建场景并做日志”是什么意思。如果您举例说明您正在尝试做的事情,那么帮助您会更容易。
  • 我想像在 RSpec/功能规范测试中那样使用 Capybara,但不是使用本地 Ruby 项目,而是使用普通的生产网站:)

标签: ruby selenium capybara automated-tests


【解决方案1】:

您可以manually create a Capybara session 并使用它与您的生产网站进行交互。比如下面会去谷歌获取文字:

require 'capybara'

session = Capybara::Session.new(:selenium)
session.visit('https://www.google.com')
puts session.text

请注意,Capybara 和 RSpec 都不要求被测系统是本地 Ruby 项目。例如,以下 RSpec 测试转到 Google 并检查“Google”一词是否出现:

require 'capybara/rspec'

Capybara.current_driver = :selenium
Capybara.app_host = 'http://www.google.com'

feature "google", :js => true do
    scenario "should have text" do
        visit('/')
        page.should have_content(/Google/)
    end
end

【讨论】:

  • 太棒了!为我工作:) 谢谢队友:)
猜你喜欢
  • 2012-08-31
  • 2021-01-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-30
  • 2010-12-09
  • 2018-03-02
相关资源
最近更新 更多