I’m trying to create a cucumber scenario that checks to see if elements are loaded for an ‘edit posting’ page. My trouble, however, is that I don’t know how to create a path that will direct it to the page.
The general path is something like: /posting/id/edit
i.e. /posting/11/edit
Here is my posting.feature scenario
# Editing existing post
Scenario: Saving the edits to an existing post
Given I am logged in
Given there is a posting
Given I am on the edit posting page
When I fill in "posting_title" with "blah"
And I fill in "posting_location" with "blegh"
When I press "Update posting"
Then I should see "Posting was successfully updated."
I dabbled around with some Factory Girl stuff, but I don’t have the knowledge to use it appropriately (if it offers a solution), and wasn’t able to find a relevant example.
I’ve also seen a lot of suggestions with regards to ‘Pickle’, but if possible I’d like to avoid that route to keep things simple seeing as I have very limited experience.
Thanks!
Is there a link on your website that would take someone to the edit page? Then you could do something like:
This assumes that there is a link on your homepage whose text is Posts, and then another one in the resulting page called Edit. This is the best way to accomplish this, because there should be a direct route to whatever page you are testing. Those steps are also provided in web_steps.rb
You could also make a custom step like you did there with
Given I am on the edit posting pageand the code would be something like:Which you of course could also generalize like
I am on the edit posting page for posting 11. But in general, cucumber tests are acceptance tests, which means not bypassing things like this. You should have a link to the edit page that can be clicked.