在Rails Testing中为assert_redirected_to

| 我试图在我的客户控制器上运行一些测试。当我手动测试控制器时,一切工作正常,但是当我对其进行书面集成测试时,会出现错误。这是我的测试代码:
context \"non-empty Customer model\" do
  setup do
    @customer = Customer.first || Customer.create(:name => \"John\", :address => \"123 Street Cool\", :telephone => \"01484349361\", :email => \"johnsmith@world.com\")
  end

  should \"be able to create\" do
    get \"/customers/new\"
    assert_response :success
    post \"/customers/create\", :post => @customer
    # assert_response :success
    assert_redirected_to \"/customers/list\"
  end
我得到的错误是在assert_redirected_to行上,它说:   期望的块返回真实值。 这是我的控制器代码,用于执行新的/创建操作:
  def new
    @customer = Customer.new

    respond_to do |format|
      format.html # new.html.erb
      format.xml  { render :xml => @customer }
    end
  end

  def create
    # Instantiate a new object using form params
    @customer = Customer.new(params[:customer])
    # Save the object
    if @customer.save
      # If save succeeds, redirect to the list action
      flash[:notice] = \"Customer created.\"
      redirect_to(:action => \'list\')
    else
      # If save fails, redisplay the form so user can fix problems
      render(\'new\')
    end
  end
我非常感谢您对使测试正常进行的任何帮助。 谢谢。     
已邀请:
好像您发送了错误的信息作为参数。
should \"be able to create\" do
  get \"/customers/new\"
  assert_response :success
  post \"/customers/create\", :customer => @customer.attributes
  assert_redirected_to \"/customers/list\"
end
    

要回复问题请先登录注册