[rspec-users] [Cucumber] Scenario Outlines Output Insufficient

Andrew Premdas apremdas at gmail.com
Sun Jan 18 14:36:58 EST 2009


You misunderstood I bit of my post, I've nested a comment. Its towards the
end of the post.

2009/1/18 Joseph Wilk <joe at josephwilk.net>

>  Andrew Premdas wrote:
>
> I have output issues both with scenario outlines and using step tables.
> I'll deal with scenario outline in this mail. This will have to be an html
> mail as I need color to say what I want to say, I'll also use a real world
> example so this will be a bit long
>
> Currently the output of my scenario outline is
>
> --
> Scenario Outline: viewing resources                                   #
> features/admin/poop.feature:6
>     Given an admin user admin exists                                 #
> features/admin/poop.feature:7
>     And there are 4 <resource>                                       #
> features/admin/poop.feature:8
>     When I login as admin with adminpass                             #
> features/admin/poop.feature:9
>     And I visit admin_home page                                      #
> features/admin/poop.feature:10
>     Then I should be at the admin_home page                          #
> features/admin/poop.feature:11
>     And I should see a <resource> resource                           #
> features/admin/poop.feature:12
>     When I ppope  ksdjhfkh jadfh kjh kahjkh ksdfh khsdfa <resource>  #
> features/admin/poop.feature:13
>     When I follow <resource> resource                                #
> features/admin/poop.feature:14
>     Then PPouay Widgit should see a list of 4 <resource>             #
> features/admin/poop.feature:15
>     And I should see a new <resource> link                           #
> features/admin/poop.feature:16
>
>
>     |resource|
>     |category|
>     |product |
>     |user    |
>
> 4 scenarios
> 15 steps passed
> 3 steps skipped
> 12 steps pending (12 with no step definition)
> --
>
> So I'd like more information about which steps are matched which are
> skipped etc.
>
> --
> Scenario Outline: viewing resources                                #
> features/admin/poop.feature:6
>     Given an admin user admin exists                                 #
> features/step_definitions/accounts/creation.steps.rb:66
>     And there are 4 <resource>                                       #
> features/step_definitions/general.rb:1
>     When I login as admin with adminpass                             #
> features/step_definitions/accounts/login.steps.rb:35
>     And I visit admin_home page                                      #
> features/step_definitions/general.rb:19
>     Then I should be at the admin_home page                          #
> features/step_definitions/general.rb:30
>     And I should see a <resource> resource                           #
> features/admin/poop.feature:12
>     When I ppope  ksdjhfkh jadfh kjh kahjkh ksdfh khsdfa <resource>  #
> features/admin/poop.feature:13
>     When I follow <resource> resource                                #
> features/step_definitions/admin_steps.rb:23
>     Then PPouay Widgit should see a list of 4 <resource>             #
> features/admin/poop.feature:15
>     And I should see a new <resource> link                           #
> features/admin/poop.feature:16
>
>
>
>     |resource|
>     |category|
>     |product |
>     |user    |
>
>   3 scenarios
> 5 steps passed 3 times
> 1 steps skipped 3 times
> 4 steps pending (4 with no step definition)
>
> Thanks for getting back to us with some good examples.
>
> This to me does look like the same issue I brought up in this ticket:
> http://rspec.lighthouseapp.com/projects/16211-cucumber/tickets/163-hidden-pending-status-with-output-when-using-scenario-outlines
>
>
> --
>
> Now there are a couple of issues I can think of that might challenge this
> output. This is basically situations where the output varies dependent on
> the resource.
>
> 1. Different step matches a line dependent on resource
>
> And there are 4 <resource>
>     And there are 4 category                                      #
> features/step_definitions/category.rb:1
>     And there are 4 product                                        #
> features/step_definitions/product.rb:1
>     And there are 4 user                                            #
> features/step_definitions/user.rb:1
>
>
> 2. Different result of step depending on resource i.e. sometimes is matches
> sometime it fails. Here the line color should be of the worst result
>
> And there are 4 <resource>
>     And there are 4 category                                      #
> features/admin/poop.feature:8
>     And there are 4 product                                        #
> features/step_definitions/product.rb:1
>     And there are 4 user                                            #
> features/step_definitions/user.rb:1
>
> ---
>
>
> An interesting idea but I'm not sure about it. I think I would want to know
> about both the pending and error cases rather than one trump the other (say
> I'm running something slow like selenium or this output is coming from my
> continuous integration server). It could also produce some rather confusing
> output as you are basically expressing all the example rows output in a
> single scenario (i.e There is a red step here but I've no idea which steps
> it was run with).
>
> Less confusing but a more verbose solution would be to show the full
> scenario with values bound rather than the examples table. I'm still not
> keen on this solution as I would like to preserve the way the scenarios are
> defined (in the feature file) with the way that they are outputted.
>
>
>
>     And there are 4 category                                      #
> features/admin/poop.feature:8
>     And there are 4 product                                        #
> features/step_definitions/product.rb:1
>

No you've misunderstood me. I meant the outline step is colored with the
worst result. Then the details of each run of the step are nested inside the
outline step showing the output for each resource (entry in the table)


> An alternative approach might be to expand the resource display when things
> go wrong, i.e. put problems underneath the resource in which they're
> detected
>
> |resource|
> |category|
>    And there are 4 category                                      #
> features/admin/poop.feature:8
>  |product |
>  |user    |
>
>
>  This is the solution suggested in the ticket:
>  It provides more concise output, the output represents what the actual
> defined scenario looks like however  hidden steps are presented out of
> context.
>
>
> --
> Joseph Wilk
> http://blog.josephwilk.net
>
> So here I can tell that this step hasn't passed
>
> I hope this helps
>
> Andrew
>
>
>
> 2009/1/17 aslak hellesoy <aslak.hellesoy at gmail.com>
>
>>
>>
>>  On Sat, Jan 17, 2009 at 5:08 AM, Andrew Premdas <apremdas at gmail.com>wrote:
>>
>>> I'm having problems knowing what a scenario outline I've created is
>>> doing. In particular I have no idea about what steps are being matched when
>>> the outline is run so when I break something I can't find out what is wrong.
>>> Is there any progress on getting better output for scenario outlines.
>>>
>>
>> It would be immensly helpful if you could give some examples of what kind
>> of output you think is better.
>>
>> Aslak
>>
>>
>>>
>>> TIA
>>>
>>> Andrew
>>>
>>> _______________________________________________
>>> rspec-users mailing list
>>> rspec-users at rubyforge.org
>>> http://rubyforge.org/mailman/listinfo/rspec-users
>>>
>>
>>
>>
>> --
>> Aslak (::)
>>
>> _______________________________________________
>> rspec-users mailing list
>> rspec-users at rubyforge.org
>> http://rubyforge.org/mailman/listinfo/rspec-users
>>
>
> ------------------------------
>
> _______________________________________________
> rspec-users mailing listrspec-users at rubyforge.orghttp://rubyforge.org/mailman/listinfo/rspec-users
>
>
>
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/rspec-users/attachments/20090118/fdc003a0/attachment-0001.html>


More information about the rspec-users mailing list