[rspec-users] Cucumber: Group Given, Whens and Thens
pergesu at gmail.com
Fri Nov 21 11:42:39 EST 2008
"David Chelimsky" <dchelimsky at gmail.com> writes:
> On Thu, Nov 20, 2008 at 10:40 AM, Andrew Premdas <apremdas at gmail.com> wrote:
>> Also occasionally you may want to use a when as a given. Cucumber
>> doesn't actually use the given|when|then|and to differentiate steps,
>> just the regex that comes after them. Sometimes I feel that it makes
>> sense as in the following examples
>> When I log in as Fred
>> Given I log in as Fred
>> When I'm writing the login feature I'd use the first statement, but
>> when I'm testing foo as a logged in user I'd use the second. Both
>> would use the same step.
>> Now I realise that this counters the excellent advice given on the
>> step-organisation page of the wiki. However I think in this case even
>> though the step is definitely a when it should be allowed to be used
>> as a Given in some stories as its definitely a setup step rather than
>> an interaction step in certain|most contexts
> I actually prefer to keep these separate:
> Given I am logged in as Fred
> When I log in as Fred
> And then have each call out to a helper method named login_as(name).
> This reduces the duplication in the code in the steps, but allows me
> to be consistent about the distinctions I make between how Givens and
> Thens are expressed.
This is what I do.
More information about the rspec-users