Railsチュートリアル第5章(第6版)-5.3.4 リンクのテスト- の演習2に従ってtest環境でfull_titleヘルパーを使うようにすると、NoMethodErrorが発生した。

どうやらfull_titleメソッドが見つからないようだ。
やったこと① NoMethodErrorについて調べた
まずはNoMethodErrorについて調べてみた。が、やはりそのまま**"SiteLayoutTest"でfull_titleメソッドが定義されていない**という意味のようだ。この時点で私が思っていたのは、"SiteLayoutTest"ではfull_titleメソッドを呼び出しているだけなので、そりゃあここでは定義していないでしょ。という事だった。これまでチュートリアルに沿って進めてきたので、full_titleメソッドを定義している側が正しいか調べてみよう。とはならなかった。
やったこと② full_titleメソッドについて調べた
次にfull_titleメソッドを調べてみた。すると下記記事が最初にヒットしたので一先ず開いた。
参考:デフォルト値付きの引数 Railsチュートリアルのfull_titleメソッドを例に
記事の内容は今回知りたい内容ではないが、Railsチュートリアル第4章のfull_titleについて書かれている。このおかげで**full_titleを第4章で定義していたのだと気づいた。**
やったこと③ full_titleを定義するファイルを修正した
第4章を見直してみると原因が分かった。full_titleを定義を誤って別のファイルにしていたのだ。
×誤って定義していた"static_pages_helper.rb"
module StaticPagesHelper
# ページごとの完全なタイトルを返します。
def full_title(page_title = '')
base_title = "Ruby on Rails Tutorial Sample App"
if page_title.empty?
base_title
else
page_title + " | " + base_title
end
end
end
〇本来定義すべき"application_helper.rb"
module ApplicationHelper
end
今回は、本来定義しておくべきだが何も定義していないファイルをincludeしたことでエラーが発生していた。
"static_pages_helper.rb"のコードを"application_helper.rb"にコピペするとエラーは解消された。

まとめ
やったこと①②③の流れで解決できた。
NoMethodError: undefined methodが発生した時は、メソッドを定義しているファイルも確認すること。