0

RSpec と BDD は初めてです。私はRailscast中毒者でもあり、テスト、RSpec、BDD、Capybaraに関してできる限り見てきました。具体的には、エピソード 275を何度も見ています。このエピソードでは、仕様を保存した後に Guard を使用してテストを自動実行する方法と、Capybara と統合の仕様に触れています。

BDD と RSpec/Capybara に関しては、これが私のバックグラウンドです。私は文字通り今日始めました。今私の状況はこれです:

モデルタスクがあります。新しいタスクを作成すると、それが正常に作成されたことを示すフラッシュ メッセージが一番上に表示され、新しいタスク ページが表示されます。ただし、これを実装する前に、まずこの機能を示すテストを書きたいと思います (Bob おじさんがかつて言ったように、失敗するテストを少なくとも 1 つ書くまでは、コードを書くべきではありません)。ただし、どのタイプのテストを作成する必要があるかについては少し迷っています。これは統合仕様ですか、それともコントローラー仕様ですか? または両方?これらのテストはどのように見えるでしょうか?

4

1 に答える 1

1

始めるのに役立つ一般的な例を次に示します。

describe "Creating a new Task" do
  before do
    # setup tasks for logging in a user with sufficient rights
    # create any objects ont which the new Task depends

    visit "/tasks/new"
    fill_in "name", :with => "Sample Task"
    click_button "Submit"
  end

  it "should show a success message" do
    page.should have_content "Task was created successfully"
  end

  it "should redirect to the show task page" do
    page.should have_content "Show Task"
    task = Task.last
    current_path.should == task_path(task)
  end
end
于 2012-11-13T01:54:04.193 に答える