Tôi muốn truy cập user1.application.local.dev/panel/new từ thông số bít tết.Rails3: Làm cách nào để truy cập vào tên miền phụ trong thông số bít tết (rspec) bằng cách sử dụng Capybara
Tôi làm cách nào?
Tôi muốn truy cập user1.application.local.dev/panel/new từ thông số bít tết.Rails3: Làm cách nào để truy cập vào tên miền phụ trong thông số bít tết (rspec) bằng cách sử dụng Capybara
Tôi làm cách nào?
Bước 1. Thiết lập DNS cục bộ.
http://intridea.com/2010/6/2/using-bind-locally-on-os-x-for-easy-access-to-subdomains?blog=company
Bước 2. Sử dụng một trình điều khiển Capybara có hỗ trợ tên miền phụ.
Hoặc Selenium hoặc Akephalos sẽ thực hiện thủ thuật.
Tạo đặc tả/support/custom_env và đưa nội dung này trong đó:
#Capybara.default_driver = :selenium
Capybara.default_driver = :akephalos
Capybara.app_host = 'http://davinci.testing.dev:8082'
Capybara.run_server = false
Capybara.server_port = 8082
Chọn trình điều khiển Capybara mà bạn muốn, hoặc Selenium hoặc akpehalos hoặc bất cứ điều gì bạn muốn, trừ rack-test (mặc định)
Đặt tên miền và cổng của bạn lựa chọn, tất nhiên.
Bước 3:
Thêm khối config.before để spec của bạn/spec_helper.rb
RSpec.configure làm | cấu hình |
config.before: mỗi làm Capybara.app_host = "http://davinci.testing.dev:8082" cuối
cuối
Đặt tên miền và cổng của bạn lựa chọn, tất nhiên.
Bước 4:
Thêm trợ giúp để chuyển tên miền phụ.
Spec/chấp nhận/support/helpers.rb
def switch_to_subdomain(subdomain)
Capybara.app_host = "http://#{subdomain}.davinci.testing.dev:8082"
end
Đặt tên miền và cổng của bạn lựa chọn, tất nhiên.
Bước 5. Sử dụng phương pháp trợ giúp trong thông số kỹ thuật của bạn.
Bây giờ mỗi lần bạn muốn thay đổi các tên miền phụ bạn làm:
scenario "Show school" do
school = School.make!(:name=>"perico")
switch_to_subdomain(school.name)
visit("/")
page.has_content?("Welcome to perico")
end
Đây là câu hỏi về Capybara. Đặt số default_host
khi bạn cần
Capybara.default_host = 'sub.domain.com'
chỉ này hoạt động nếu bạn không sử dụng rack thử nghiệm. Nó hoạt động với Selenium và Akephalos. – Nerian
câu trả lời thực sự hữu ích! –