RailsApp Rails RSpec Capybara 2018年 12月 13日
mkdir -p spec/system/kurasus
'ENV['RAILS_SYSTEM_TESTING_SCREENSHOT'] = 'inline'
require 'rails_helper'
RSpec.describe :Gakuseis, type: :system do
include Devise::Test::IntegrationHelpers
teacher_login :hkob
let(:kurasu) { kurasu_factory :hkob2300 }
it '学生を作成できること' do
visit kurasu_gakuseis_path(kurasu)
click_on '編集モードに入る'
click_on '学生の一括登録'
page.execute_script %Q[document.getElementById('number_name').value = "2301\tABC"]
click_on '登録'
expect(page).to have_content '学生を一括登録しました(1名).'
end
context '2301 の学生が存在する時' do
let!(:foo2301) { gakusei_factory :foo2301 }
it '学生を編集できること' do
visit kurasu_gakuseis_path(kurasu)
click_on '編集モードに入る'
click_on '学生編集'
fill_in '氏名', with: 'bar'
click_on '更新'
expect(page).to have_content '学生を更新しました.'
expect(page).to have_content 'bar'
end
it '学生を削除できること' do
visit kurasu_gakuseis_path(kurasu)
click_on '編集モードに入る'
click_on '学生削除'
page.driver.browser.switch_to.alert.accept
expect(page).to have_content '学生を削除しました.'
expect(page).not_to have_content '2301'
end
it '学生を表示できること' do
visit kurasu_gakuseis_path(kurasu)
click_on '学生表示'
expect(page).to have_content 'foo'
end
end
end
Gakuseis
Capybara starting Puma...
* Version 3.12.0 , codename: Llamas in Pajamas
* Min threads: 0, max threads: 4
* Listening on tcp://127.0.0.1:62937
学生を作成できること
2301 の学生が存在する時
学生を編集できること
学生を削除できること
クラスを表示できること
%td= f.submit t('helpers.submit.create')
長くなったので今日はここまで