Please add a page to:

https://github.com/jbehave/jbehave-core/tree/master/distribution/src/site/content

and update sitemap.xml.

Cheers

On 23/10/2013 20:27, Paul Barton wrote:
Thanks for your feedback Mauro,
Should I create a jbehave-docs repository in github consisting only of .md files (similar to selenium-docs <https://github.com/SeleniumHQ/selenium-docs> structure) or is there a location for docs as used by the web page (http://jbehave.org/) to fork?
Cheers,
:P


On Wed, Oct 23, 2013 at 1:32 PM, Mauro Talevi <[email protected] <mailto:[email protected]>> wrote:

    Hi Paul,

    thanks for sharing your thoughts.  Overall, I would tend to agree
    with what you're saying.

    By experience, GivenStories tend to be more used and more readable
    as preconditions.

    Composite steps are more about providing a "zoom out" effect once
    the composite steps have been defined, as you rightfully point out
    not just as a Given.

    Feel free to provide a patch with a doc page with these best
    practices.

    Cheers


    On 23/10/2013 12:05, Paul Barton wrote:

        Hello All,

        I am just curious on how the jBehave community decides when
        and where to use GivenStories and Composite Steps, in order to
        set a best practice for my team...

        At least there seems to be some confusion in my team about
        where and when to use either GivenStories or a composite steps
        (@Composite annotation) (ie. some think its good to only use
        only GivenStories and others only want to group every test
        case into a composite step)

        My personal belief is that Composite Steps are there solely to
        provide a declarative semantics, over that of imperative
        semantics of a block of steps...

        And that GivenStories are there to allow a Software Engineer
        in Test to reuse isolated story files as preconditions in
        their stories...

        And that both should be used given some best practices...

        Hence a best practice I was thinking would be the following:
        - CompositeSteps should only be used when attempting to
        provide a declarative step for the dsl layer, only after all
        imperative steps have been written for the corresponding page
        object
        - Do not create composite steps for items that will not
        benefit the readability of the step (too many parameters can
        hurt the readability of a step, use GivenStories here)
        - Do not create composite steps for every one off test case,
        only create when you have a high impact for re-usability
        - Do not restrict the use of CompositeSteps to a precondition
        (@Given), as it can be used to group actions (@When) or
        post-conditions (@Then) as well
        - Stories called by GivenStories should be isolated (otherwise
        you may end up having to manage the dependencies, ie story C
        uses story B uses story A uses etc...)
        - GivenStories should be used when there is a complex set of
        preconditions for a story

        Are my thoughts wrong or do you have some best practices to
        add or share regarding when to use these features?

        Cheers,
        :Paul



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

    http://xircles.codehaus.org/manage_email




Reply via email to