letを使用した共通化がテキスト通りに打ってもテストが通りません。
ユーザーAが作ったタスクをユーザーBが見れないテストなのですが、見れてしまうようです。
require 'rails_helper' describe 'タスク管理機能' ,type: :system do describe '一覧表示機能' do let(:user_a) { FactoryBot.create(:user, name: 'ユーザーA', email: 'a@example.com')} let(:user_b) { FactoryBot.create(:user, name: 'ユーザーB', email: 'b@example.com')} before do FactoryBot.create(:task, name: '最初のタスク', user: user_a) visit login_path fill_in 'メールアドレス', with: 'a@example.com' fill_in 'パスワード', with: 'password' click_button 'ログインする' end context 'ユーザーAがログインしている時' do let(:login_user) { user_a } it 'ユーザーAが作成したタスクが表示される' do expect(page).to have_content '最初のタスク' end end context 'ユーザーBがログインしている時' do let(:login_user) { user_b } it 'ユーザAが作成したタスクが表示されない' do expect(page).to have_no_content '最初のタスク' end end end end
Failures: 1) タスク管理機能 一覧表示機能 ユーザーHがログインしている時 ユーザDが作成したタスクが表示されない Failure/Error: expect(page).to have_no_content '最初のタスク' expected not to find text "最初のタスク" in "Taskleaf\nタスク一覧\nログアウト\nログインしました\nタスク一覧\n新規登録\n名称 登録日時\n最初のタスク 2019-03-05 02:39:31 UTC 編集削除" [Screenshot]: tmp/screenshots/failures_r_spec_example_groups_nested_nested_h_ユーザdが作成したタスクが表示されない_308.png # ./spec/system/tasks_spec.rb:27:in `block (4 levels) in <top (required)>' Finished in 8.03 seconds (files took 5.41 seconds to load) 2 examples, 1 failure Failed examples: rspec ./spec/system/tasks_spec.rb:26 # タスク管理機能 一覧表示機能 ユーザーHがログインしている時 ユーザDが作成したタスクが表示されない
ご教授お願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/03/05 07:28
2019/03/05 07:39 編集
2019/03/06 05:55