Cucumber - how to spec a quick search box


#1

Hello all.
Wondering if anyone else has solved this.

Some websites (including the intranet app I am working on) have a form
in
the top corner of the site that is buttonless. If you focus on this form
enter text and hit enter, it submits. usually used for quick search
boxes.

Question, has anyone managed to tie that into a cucumber feature?

Scenario: Using the quick search box
Given I am logged in
And I visit the home page
And there is someone called ‘Bob S.’ to search for
When I put ‘Bob S.’ into the quick search box
And I hit enter
Then I should be shown the search results page
And there should be ‘Bob S.’ on the page

it’s the ‘And I hit enter’ that is bugging me :slight_smile:

Any ideas?

Mikel


#2

Mikel L. wrote:

Any ideas?

I’ve encountered the same problem. I generally try and pull the
abstraction up a bit a say something like:

When I submit a quick search for ‘Bob S.’

But here I’m assuming that its not really important to the customer how
they submit the form just that they can.

WDYT?

Joseph W.
http://blog.josephwilk.net


#3

On Tue, Nov 18, 2008 at 5:44 AM, Joseph W. removed_email_address@domain.invalid
wrote:

Question, has anyone managed to tie that into a cucumber feature?
it’s the ‘And I hit enter’ that is bugging me :slight_smile:

WDYT?

I agree with Matt. Unless it was really really really important to the
customer how the thing was submitted I wouldn’t try to automate the
pressing of the enter button in the browser. I would more or less
just say what I was doing rather than how I was doing it. I might end
up with:

Given I’m a logged in user at the home page
And there is someone called ‘Bob S.’ to earch for
When I do a quick search for ‘Bob S.’
Then I should see that ‘Bob S.’ is found in the search results

If you’re wondering how you submit the quick search (since it has no
button) then here’s a suggestion that Ben M. gave me back in
September: use tags to have a button on the page that
Webrat can submit, but that the browser won’t render.

Here’s a link to that comment:
http://www.nabble.com/Re%3A-webrat-question%2C-form-without-buttons-p19299723.html


Zach D.
http://www.continuousthinking.com
http://www.mutuallyhuman.com


#4

Zach D. wrote:

enter text and hit enter, it submits. usually used for quick search boxes.
And there should be ‘Bob S.’ on the page

up with:

Here’s a link to that comment:
http://www.nabble.com/Re%3A-webrat-question%2C-form-without-buttons-p19299723.html

And if you are using Selenium:

key_press :search, 13


Joseph W.
http://blog.josephwilk.net


#5

If the form tag has an ID, you can use Webrat’ new submit_form method
to do just this sort of thing.

-Bryan


#6

On Wed, Nov 19, 2008 at 1:32 PM, Bryan H. removed_email_address@domain.invalid
wrote:

If the form tag has an ID, you can use Webrat’ new submit_form method
to do just this sort of thing.

Not wrong about being new :slight_smile: 24 hours ago… recent enough not to be in
the
History.txt file and I had to go hunting for the change set :wink:

Thanks, works perfectly!

Mikel