3

このスライドで、RSpecのベストプラクティス(http://blog.bandzarewicz.com/slides/krug-the-perfect-rspec/#19)や他の多くの場所について読みました。 "それ" 。例えば ​​:

describe UsersController, '#create' do
  # setup spec...
  it 'creates a new user' do
    should assign_to(:user).with(user)
    should set_the_flash
    should respond_with(:redirect)
    should redirect_to(admin_user_path(user))
  end
end

対。

describe UsersController, '#create' do
  # setup spec...
  it { should assign_to(:user).with(user) }
  it { should set_the_flash }
  it { should respond_with(:redirect) }
  it { should redirect_to(admin_user_path(user)) }
end

1つの「それ」で1つの期待値のみを持つことがベストプラクティスであるのはなぜですか。

4

1 に答える 1

3

このアプローチはドキュメント化に適しているためです。試してみてくださいrspec --format documentation。また、別の理由として、1つshouldごとitに、どのテストが失敗しているかを常に確認できます。

于 2012-07-25T08:31:18.583 に答える