Dave Carey created JBEHAVE-753:
----------------------------------

             Summary: Enable GivenStories to be considered as part a 
parametrised scenario context - allowing better reuse of Given Stories 
                 Key: JBEHAVE-753
                 URL: https://jira.codehaus.org/browse/JBEHAVE-753
             Project: JBehave
          Issue Type: Improvement
          Components: Core
    Affects Versions: 3.6, 3.5.4
            Reporter: Dave Carey


h3.  Introduction

JBehave supports parameterizing scenarios to allow repeating tests. _e.g. As 
shown in the documentation:-_

{noformat}
Given a stock of <symbol> and a <threshold>
When the stock is traded at <price>
Then the alert status should be <status>
 
Examples:    
|symbol|threshold|price|status|
|STK1|10.0|5.0|OFF|
|STK1|10.0|11.0|ON
{noformat}

It would be desirable if this convention could be extended to be used in 
combination with a *Given Story*.
To demonstrate by means of an extension to the documentation example:-
Suppose there is a requirement to select a specific "Stock Exchange" before 
executing each of the tests above.
Rather than building this into the story,  we might opt, for reuse purposes, to 
use a *Given Story* to first select the "Stock Exchange".

Now the first example would be _'Nasdaq'_  and the second _'FTSE'._  

The hypothetical configuration might then be:-

{noformat}
GivenStories: acme/givenstories/SelectAStockExchange.story
Given a stock of <symbol> and a <threshold>
When the stock is traded at <price>
Then the alert status should be <status>
 
Examples:    
|stockExchange|symbol|threshold|price|status|
|NASDAQ|STK1|10.0|5.0|OFF|
|FTSE|STK1|10.0|11.0|ON
{noformat}

h3.  Current Behaviour
Unfortunately the example above will not work as desired
The 'GivenStory',  _SelectAStockExchange.story_,  does +not+ inherit the 
parameterized variables as night be expected.
Nor does the obvious supporting feature, anchor tags, help because only a 
specific row number can be specified in the anchor tag.  
e.g. 
{noformat}
GivenStories: acme/givenstories/SelectAStockExchange.story{0}
{noformat}

h3.  Suggested Behaviour
The Given Story should be considered part of the be parametrised scenario 
context and inherit the parameters of the row currently being executed.

Referencing previous response from Mauro on the dev mail thread

_"As I understand it, you'd like the GivenStories to be considered as part of 
the parametrised scenario context and be passed the row of parameters that is 
being processed as part of a parametrised scenario.   I guess, we could make 
that the default behaviour, and any parameters passed to the given stories 
could be overridden by the execution of the given story"_


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to