2011-10-23 9 views
1

私のアプリの中には、jQueryプラグインFullCalendarを使用しています。これはGoogleカレンダーのようなjQueryカレンダーです。機能テスト、jQuery、assert_select_jquery

カレンダーが表示されていることをテストする機能テスト(CalendarControllerTest < ActionController :: TestCase)を作成したいと考えています(CalendarController#index)。 - CalendarController + calendar.js(Railsの3.1から足場内

<script src="fullcalendar.js" type="text/javascript"></script> 
<script src="calendar.js" type="text/javascript"></script> 
[...] 
<div id="calendar"></div> 

:カレンダーではなく、それは私が持っている私のHTMLページ内のJavaScriptで記述され、通常のHTMLであれば簡単だろう

calendar.js + calendar.css + CalendarControllerTest)私はFullCalendarロード:この私の機能テスト(CalendarControllerTest)内したがって

$('#calendar').fullCalendar(); 

を動作しません。

# Checks <div class="fc-content"> is present i.e the calendar is being displayed 
assert_select '.fc-content', count: 1 

私は成功せずassert_select_jqueryを使用しようとしました:

assert_select_jquery :html, '#calendar' do 
    assert_select '.fc-content', count: 1 
end 
私はWebrat /カピバラについて私はそれが機能していない統合テストのために使用されて見るものから知っている

テスト。

どうすればよいですか?

答えて

0

自分に答える... 私はデフォルトのRailsテストフレームワークを使って、モデルとコントローラ(ディレクトリtest/unitとtest/functionnal)をテストします。 assert_select_jqueryは、create.js.erbやdestroy.js.erbのような邪魔にならないJavaScriptを使用している場合は、機能テスト(コントローラ)で使用されます。 私は機能テストの中でJavaScriptを完全にテストしていません。私はディレクトリテスト/統合の中でCapybaraを使用しています。