当前位置: 首页 > 工具软件 > Capybara > 使用案例 >

Capybara简单入门

景育
2023-12-01

Capybara 可以和 Cucumber、RSpec、Test::Unit、MiniTest::Spec配合使用。FIXME

Capybara 默认使用 RackTest 驱动,此外还支持 Selenium、Capybara-webkit、Poltergeist。

DSL

Capybara 的 DSL 十分易懂。我们来看几个例子吧:

访问:

visit('/projects')

点击链接或按钮:

click_link('id-of-link')
click_button('Save')

表单:

fill_in('First Name', :with => 'John')
fill_in('Password', :with => 'Seekrit')
fill_in('Description', :with => 'Really Long Text...')
choose('A Radio Button')
check('A Checkbox')
uncheck('A Checkbox')
attach_file('Image', '/path/to/image.jpg')
select('Option', :from => 'Select Box')

XPath

page.has_selector?(:xpath, '//table/tr')

查找

find_field('First Name').value
find('#navigation').click_link('Home')

部分驱动支持执行 JavaScript:

page.execute_script("$('body').empty()")
result = page.evaluate_script('4 + 4');


使用capybara加载selenium访问谷歌实例

require 'rubygems'
require 'capybara'
require 'capybara/dsl'


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


module MyCapybaraTest
  class Test
    include Capybara
    def test_google
      visit('/')
    end
  end
end


t = MyCapybaraTest::Test.new
t.test_google

项目主页

http://jnicklas.github.io/capybara/

https://github.com/jnicklas/capybara

 类似资料: