質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Capybara

Capybaraは、 Rubyで開発されているWebアプリケーションテストフレームワークです。Webブラウザ不要でブラウザ上のユーザー操作及びJavaScriptの挙動を自動化することができます。

RSpec

RSpecはRuby用のBDD(behaviour-driven development)フレームワークです。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

0回答

3181閲覧

[Rspec]Feature Specが落ちる(CI: wercker.com内) Missing host to link to!

yamitake

総合スコア27

Capybara

Capybaraは、 Rubyで開発されているWebアプリケーションテストフレームワークです。Webブラウザ不要でブラウザ上のユーザー操作及びJavaScriptの挙動を自動化することができます。

RSpec

RSpecはRuby用のBDD(behaviour-driven development)フレームワークです。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2016/07/06 06:04

編集2016/07/06 07:08

###前提・実現したいこと
ローカルで開発を行っています。Rspec,Capybara,poltergeistなどを使ってfeatureスペックを書いています。
https://app.wercker.com/ を用いてCIを回しているのですが、予期せぬエラーが起きてしまいます。
解決方法をアドバイスしていただけると嬉しいです。

  • ローカルのテストは全て成功します。 ModelやController,Featureなどのテストを書いています。

結果:
wercker.com: 287 examples, 2 failures, 5 pending
ローカル(mac): 287 examples, 0 failures, 5 pending

※ wercker.com で出力されるエラー。 feature spec全てが落ちているわけではありません。

###発生している問題・エラーメッセージ

ruby

1Failures: 2 3 1) Sample::Customs テストページ should have title "テストページ" 4 Failure/Error: Unable to find matching line from backtrace 5 ActionView::Template::Error: 6 Missing host to link to! Please provide the :host parameter, set default_url_options[:host], or set :only_path to true 7 # /cache/bundle-install/ruby/2.1.0/gems/actionpack-4.1.4/lib/action_dispatch/http/url.rb:67:in `build_host_url' 8 # /cache/bundle-install/ruby/2.1.0/gems/actionpack-4.1.4/lib/action_dispatch/http/url.rb:42:in `url_for' 9 # /cache/bundle-install/ruby/2.1.0/gems/actionpack-4.1.4/lib/action_dispatch/routing/route_set.rb:668:in `url_for' 10 # /cache/bundle-install/ruby/2.1.0/gems/actionpack-4.1.4/lib/action_dispatch/routing/url_for.rb:155:in `url_for' 11 # /cache/bundle-install/ruby/2.1.0/gems/actionview-4.1.4/lib/action_view/routing_url_for.rb:83:in `url_for'

###設定ファイル(一部)

ruby

1require 'rspec/rails' 2require 'capybara' 3require 'capybara/rspec' 4require 'capybara/poltergeist' 5Capybara.default_host = 'localhost:3000' 6Capybara.javascript_driver = :poltergeist 7Capybara.register_driver :poltergeist do |app| 8 Capybara::Poltergeist::Driver.new(app, { 9 js_errors: false, 10 timeout: 1000, 11 phantomjs_options: [ 12 '--load-images=no', 13 '--ignore-ssl-errors=yes', 14 '--ssl-protocol=any'] 15 } 16 ) 17end 18Capybara.configure do |config| 19 config.match = :one 20 config.exact_options = true 21 config.ignore_hidden_elements = true 22 config.visible_text_only = true 23end

試したこと

test.rbにdefault_url_optionsの記述

Missing host to link to! Please provide the :host parameter, set default_url_options[:host], or set :only_path to true

と出ているので、test.rb
config.action_mailer.default_url_options = { host: 'wercker-test.example.jp' }
を追加しましたが、解決せず。

rails_helperにdefault_url_optionsの設定を記述

http://stackoverflow.com/questions/7182600/rspec-route-testing-and-hosts を参考にrails_helper内に下記の設定を追加しました。が解決せず。
Rails.application.routes.default_url_options[:host] = 'test.host'

その他にもCapybaraのdefault_hostを設定したり、色々行いましたがエラー内容は変わりませんでした。
どこらへんの設定を確認すれば良いのか、などアドバイスをいただると嬉しいです。
宜しくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問