2012-01-18 2 views
1

私はテストのコンセプトには新しく、実際には私を止めさせるものがあります。現在、rspecとcapybaraを使用してリクエストテストを行っています。たとえば、ボタンを押す、フォームフィールドを入力するなどのユーザーアクションを指定する場合は、フィールドに正確な言葉を入力する必要があります。正確な言い回しを指定しないでRailsをテストする

例えば、私がResetボタンを持っていて、私のテストでclick_button 'reset'と書いたとき、それは失敗しました。同様に、password_confirmationプロパティのフィールドがありました。しかし、私はpassword_confirmationフィールドを記入するとは言えませんでした。それはIDと名前が拡張されているからです(それぞれuser_password_confirmationuser[password_confirmation])。最も簡単な回避策は、ラベルを使用してfill_in 'confirm password'と書くことでした。

ラベルを改訂したり、大文字小文字を変更したりする場合は、これらのテストは失敗します。言葉遣いに関して厳しくないテストを行うためのオプションはありますか?

答えて

2

はい、I18nを使用する必要があります(アプリが1言語のみであっても)。次に、どのロケールがデフォルトとして設定されていても、将来どのように値を変更するかにかかわらず、「ラベルに依存しない」テストが行​​われます。

鍵を渡して実際のラベルを取得するだけです。

関連する問題