目前,我需要测试以下情况。
EG。如果我把xyz college放在文本字段中那么它应该是xz.lvh.me:3000 xyz college的短名称是xz,存储在数据库中。
homepage.feature 特色:主页 需要检查大学领域
Scenario Outline: Fill up universities
When i fillup university name "<name>"
Then it should go to their login page "<subdomain>"
Examples:
| name | subdomain |
| sp College | sp |
homepage.rb
When /^i fillup university name "([^"]*)"$/ do |name|
visit @@url
choose('institution_category_school')
fill_in "search_institution_name", :with => name
click_button "Go"
end
Then /^it should go to their login page "([^"]*)"$/ do |subdomain|
#so i need to check that produced url == "#{subdomain}.lvh.me:3000/"
end
以下是我的配置文件。 支撑/ env.rb
require 'rubygems'
require 'capybara'
require 'capybara/dsl'
require 'rspec'
Capybara.run_server = false
Capybara.default_driver = :selenium
Capybara.default_selector = :css
module Helpers
def without_resynchronize
page.driver.options[:resynchronize] = false
yield
page.driver.options[:resynchronize] = true
end
end
World(Capybara::DSL, Helpers)
@@url= "http://lvh.me:3000/"
使用Rails 3.1.1,黄瓜1.1.4,rspec 2.8.0
答案 0 :(得分:1)
使用Capybara,您可以使用以下方式获取浏览器的当前网址:
current_url
然后你可以使用正常的rspec断言:
current_url.should == "#{subdomain}.lvh.me:3000/"