I get the DRYness of these methods, but I'm not a fan. This is probably my biggest issue with the cucumber websteps. When trying to grok this scenario you're having to jump all around to figure out what the test is actually doing/asserting. Is there a way to achieve the same state without the capybara actions? If not, I'd tend to make it un-DRY and repeat them for clarity.

I also understand the argument: "if you need to change something, you can do it once and all your tests will be fixed". But on the other token, that DSL accumulates to the point where you shy away from refactoring them for fear that you're actually going to miss an important assertion that the test needs.

Maybe I see this as the difference between a FactoryGirl creation (which I like) vs building a DSL for the tests.

All my opinions of course.