Traditionally, structured test, especially long scenarios are commonly written in the step, expected, actual format. Behaviour Driven Design replaces this with the style of "Given", "When" "Then", for example
Given a working ATM
And invalid credit card
When the card is inserted
And a cash withdrawl is requested
Then no cash should be provided
And the card should be retained
I want to start use BDD on complex scenarios on a project, and the question that I have is: Does this new style of test case work for larger, real world, end-to-end scenarios or is it more appropriate for simpler "atomic" or unit test style test cases?