Próbuję testować subdomeny w railsach, tak by przykładowo:
root_path
nie odnosiło się do adresu localhost, ale do sub.myapp.test.local
Dla testów rspec’a i cucumber’a wystarczy, że ustawię:
host = "#{subdomain}.#{AppConfig['base_domain']}"
Capybara.default_host = host
ale kiedy próbuję testować strony z javascriptem za pomocą selenium robię to w ten sposób:
if Capybara.current_driver == :selenium
host = "#{subdomain}.#{AppConfig['base_domain']}"
Capybara.app_host = "http://#{host}:4000"
Capybara.server_port = 4000
end
Wtedy podczas testów odpala się firefox i przeklikuje przez strony.
Niestety muszę ręcznie do pliku /etc/hosts dodać wpis:
127.0.0 sub.myapp.test.local
Czy można skonfigurować Capybare i Selenium tak, by nie trzeba było edytować pliku /etc/hosts ?