[Cucumber] Http Post just returns status code and not Response-object


#1

Hi,

I’m really new to cucumber-testing. I want to use an HTTP Post in my
step-definitions using the post-method.
When I execute

response = post '/controller/action'

response is of type Fixnum and contains only the status code returned by
the post. In rspec it returns an HTTPResponse-instance.

Why is it different? I really need the body of the response.

Hope somebody can help me.


#2

On Fri, Feb 13, 2009 at 1:16 PM, Felix Elliger
removed_email_address@domain.invalid wrote:

Hi,

I’m really new to cucumber-testing. I want to use an HTTP Post in my
step-definitions using the post-method.
When I execute

response = post ‘/controller/action’

I’m guessing you’re using Cucumber with Rails. Cucumber step
definitions (when used with Rails) run in an instance of Rails’
ActionController::IntegrationTest. If you read that API you’ll see
that the #response method gives you access to what you need.

If you haven’t used WebRat, I strongly recommend you check it out.
It’s a thin DSL on top of ActionController::IntegrationTest that
Cucumber supports out of the box. It lets you write steps on the HTML
level rather than the HTTP level.

Aslak