2010-11-03 30 views
12

Tôi đang cố chạy thử nghiệm đối với máy chủ từ xa. nghĩa là:cách chạy thử nghiệm Capybara độc lập?

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

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


module MyCapybaraTest 
    include Capybara 

    def test_google 
    visit('/') 
    end 
end 

câu hỏi là, bạn chạy nó như thế nào?

Trả lời

18

Lưu

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::DSL 
    def test_google 
     visit('/') 
    end 
    end 
end 

t = MyCapybaraTest::Test.new 
t.test_google 

để test.rb và đơn giản: ruby test.rb

+1

Tốt câu trả lời. Điều này làm việc như là dành cho tôi với capybara (0.4.1.2) và capybara-webkit (0.5.0) trong Ruby 1.9.3. –

+3

Ngoài ra, để chạy loại kiểm tra này không đầu, hãy sử dụng đá quý 'capybara-mechanize'. Thêm 'require 'capybara/mechanize'' và' Capybara.current_driver =: mechanize' vào mã. –

+1

Cũng hoạt động với các phiên bản mới nhất: capybara-1.1.2 và capybara-webkit 0.11.0 –

0

tôi thấy thingy này dưa chuột độc lập bằng cách sử dụng trình điều khiển selen một vài ngày trước và đã nhận nó và chạy trong một vài phút:

https://github.com/thuss/standalone-cucumber

Tôi phải thực hiện một số sửa đổi:

My Gemfile là

source "http://rubygems.org" 

group(:test) do 
    gem 'cucumber' 
    gem 'capybara' 
    gem 'rspec' 
    gem 'selenium-webdriver', '2.5.0' 
end 

Và đây là env.rb tôi

begin require 'rspec/expectations'; rescue LoadError; require 'spec/expectations'; end 
require 'capybara' 
require 'capybara/dsl' 
require 'capybara/cucumber' 
require 'selenium-webdriver' 

Capybara.default_driver = :selenium 
Capybara.app_host = 'http://something' 
World(Capybara) 
Các vấn đề liên quan