Help us understand the problem. What is going on with this article?

Railsチュートリアルエラー :FormatError: fixture key is not a hash

エラーの発生!

Ruby on Rails チュートリアル 第6番
"リスト 8.24: 有効な情報を使ってユーザーログインをテストする"
を進めていると。。。。

今まで通っていたテストが全てエラーに!!

21 tests, 0 assertions, 0 failures, 21 errors, 0 skips

しかし、よくよくエラーを確認すると...

ActiveRecord::Fixture::FormatError: fixture key is not a hash: 
/home/ubuntu/environment/sample_app/test/fixtures/users.yml

fixturesフォルダの中のusers.ymlに原因があると判明。

調べてみると、ymlではインデントも意味をもつとのこと。

【参考】
https://teratail.com/questions/263996

/home/ubuntu/environment/sample_app/test/fixtures/users.ymlを
下記のように修正して、

michael:
  name: Michael Example
  email: michael@example.com
  password_digest: <%= User.digest('password') %>

再度テストを試すと。。。

21 tests, 54 assertions, 0 failures, 0 errors, 0 skips

無事解決!

まずは落ち着いてエラーメッセージを読んでいくことで、
比較的スムーズな解決につながりましたー!

エラーで困っている初学者の方にとって
少しでも助けになれば嬉しいです。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away