[rspec-users] Cucumber - how to spec a quick search box
josephwilk at joesniff.co.uk
Tue Nov 18 08:36:13 EST 2008
Zach Dennis wrote:
> On Tue, Nov 18, 2008 at 5:44 AM, Joseph Wilk <josephwilk at joesniff.co.uk> wrote:
>> Mikel Lindsaar wrote:
>>> 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 Smith' to search for
>>> When I put 'Bob Smith' into the quick search box
>>> And I hit enter
>>> Then I should be shown the search results page
>>> And there should be 'Bob Smith' on the page
>>> it's the 'And I hit enter' that is bugging me :)
>>> 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 Smith'
>> But here I'm assuming that its not really important to the customer how they
>> submit the form just that they can.
> 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 Smith' to earch for
> When I do a quick search for 'Bob Smith'
> Then I should see that 'Bob Smith' 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 Mabey gave me back in
> September: use <noscript> 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:
And if you are using Selenium:
key_press :search, 13
More information about the rspec-users