Details
-
Type: Improvement
-
Status: Resolved
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: 3.0
-
Component/s: Ant Tasks, Core, Documentation, (1)
Maven Plugin -
Labels:None
-
Number of attachments :
Description
I think it's unfortunate that a scenario file contains several other scenarios. This leads to some ambiguities in the system, such as the meaning of a GivenScenario, and also in communication (is a scenario a collection or a scenario?).
It also is somewhat a violation of the literal meaning of scenario - which by definition contains other stories or scenes, not scenarios.
I think while the framework is still relatively young it would be worth addressing this design choice. Perhaps a scenario should contain stories, or something like that.
The main concern is removing the ambiguity about what a scenario is.
Activity
Mauro Talevi
made changes -
Field | Original Value | New Value |
---|---|---|
Fix Version/s | 3.0 [ 16302 ] |
Mauro Talevi
made changes -
Assignee | Mauro Talevi [ maurotalevi ] |
Mauro Talevi
made changes -
Status | Open [ 1 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Mauro Talevi
made changes -
Component/s | Core [ 11086 ] | |
Component/s | Ant extension [ 11081 ] | |
Component/s | Maven Plugin [ 12482 ] | |
Component/s | Documentation [ 11085 ] |
A story is made of multiple scenarios, not the other way around. A scenario may depend on other scenarios as a precondition, hence the GivenScenarios keyword.
That said, yours is a fair issue being raised as in JBehave 2.x the scenario is the central element, while upon retrospective placing it at story level might serve the purpose better. Most like this cannot be done without breaking backward compat, so we'll address it as part of 3.x.
We still need to ensure that the the ability to execute a single scenario, i.e. a sequence of steps, without lots of unnecessary scaffolding around it, is satisfied.