rspecコマンドを打った時に出たエラー。
結論
FactoryBotの定義の書き方が違う。
コード
間違った書き方
require 'rails_helper'
FactoryBot.define do
factory :user do
name "Example"
sequence(:email) { |n| "tester#{n}@example.com" }
password "password"
password_confirmation "password"
year "1年"
bio "hello!"
end
end
正しい書き方
require 'rails_helper'
FactoryBot.define do
factory :user do
name {"Example"}
sequence(:email) { |n| "tester#{n}@example.com" }
password {"password"}
password_confirmation {"password"}
year {"1年"}
bio {"hello!"}
end
end
一応gemfile
group :test do
#rspecには、以下の3つのgemが必要。
gem 'rspec-rails'
gem 'factory_bot_rails'
gem 'rails-controller-testing'
#rspecのfeatureで必要。
gem 'capybara', '~> 2.13'
#Capybaraでテスト中に、現在どのページを開いているのか確認するため
gem 'launchy'
#便利。validationが一行くらいでかける。
gem 'shoulda-matchers',
git: 'https://github.com/thoughtbot/shoulda-matchers.git',
branch: 'rails-5'
end
group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
gem 'spring-commands-rspec'
end
group :development do
# Access an interactive console on exception pages or by calling 'console' anywhere in the code.
gem 'web-console', '>= 4.1.0'
# Display performance information such as SQL time and flame graphs for each request in your browser.
# Can be configured to work on production as well see: https://github.com/MiniProfiler/rack-mini-profiler/blob/master/README.md
gem 'rack-mini-profiler', '~> 2.0'
gem 'listen', '~> 3.3'
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
gem 'spring'
end
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]