Ner*_*ian 6 rspec ruby-on-rails capybara
我想从牛排规格访问user1.application.local.dev/panel/new.
我该怎么做?
步骤1.设置本地DNS.
http://intridea.com/2010/6/2/using-bind-locally-on-os-x-for-easy-access-to-subdomains?blog=company
步骤2.使用支持子域的Capybara驱动程序.
无论是Selenium还是Akephalos都能做到这一点.
创建spec/support/custom_env并将此内容放入其中:
#Capybara.default_driver = :selenium
Capybara.default_driver = :akephalos
Capybara.app_host = 'http://davinci.testing.dev:8082'
Capybara.run_server = false
Capybara.server_port = 8082
Run Code Online (Sandbox Code Playgroud)
选择你想要的水豚驱动程序,Selenium或akpehalos或任何你想要的,除了机架测试(默认)
当然,请选择您选择的域名和端口.
第3步:
将config.before块添加到spec/spec_helper.rb
RSpec.configure do | config |
config.before:每个人都做Capybara.app_host =" http://davinci.testing.dev:8082 "
结束
当然,请选择您选择的域名和端口.
第4步:
添加帮助以切换子域.
规格/接受/支持/ helpers.rb
def switch_to_subdomain(subdomain)
Capybara.app_host = "http://#{subdomain}.davinci.testing.dev:8082"
end
Run Code Online (Sandbox Code Playgroud)
当然,请选择您选择的域名和端口.
步骤5.使用规范中的帮助方法.
现在每次你想要更改子域名时:
scenario "Show school" do
school = School.make!(:name=>"perico")
switch_to_subdomain(school.name)
visit("/")
page.has_content?("Welcome to perico")
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1163 次 |
| 最近记录: |